10 ຜູ້ປະກອບການສາຍໂສ້ທີ່ມີປະໂຫຍດໃນ Linux ດ້ວຍຕົວຢ່າງທີ່ໃຊ້ໄດ້


ລະບົບຕ່ອງໂສ້ຂອງ Linux ຄຳ ສັ່ງ ໝາຍ ຄວາມວ່າ, ການລວມ ຄຳ ສັ່ງຫຼາຍໆຢ່າງແລະເຮັດໃຫ້ພວກມັນ ດຳ ເນີນການໂດຍອີງໃສ່ພຶດຕິ ກຳ ຂອງຜູ້ປະຕິບັດການທີ່ໃຊ້ໃນລະຫວ່າງພວກມັນ. ລະບົບຕ່ອງໂສ້ຂອງ ຄຳ ສັ່ງໃນ Linux, ແມ່ນບາງສິ່ງບາງຢ່າງຄືກັບວ່າທ່ານ ກຳ ລັງຂຽນສະຄິບແກະສັ້ນຢູ່ຫອຍນັ້ນເອງ, ແລະ ດຳ ເນີນການເຫຼົ່ານັ້ນຈາກປາຍທາງໂດຍກົງ. ລະບົບຕ່ອງໂສ້ເຮັດໃຫ້ມັນເປັນໄປໄດ້ທີ່ຈະອັດຕະໂນມັດຂະບວນການ. ຍິ່ງໄປກວ່ານັ້ນ, ເຄື່ອງຈັກທີ່ບໍ່ໄດ້ຮັບຄວາມນິຍົມສາມາດເຮັດວຽກໄດ້ໃນລະບົບທີ່ມີລະບົບຫຼາຍໂດຍການຊ່ວຍເຫຼືອຂອງຜູ້ປະກອບການລະບົບຕ່ອງໂສ້.

ມາດຕານີ້ມີຈຸດປະສົງແນມເບິ່ງຜູ້ໃຫ້ບໍລິການລະບົບຕ່ອງໂສ້ທີ່ໃຊ້ ຄຳ ສັ່ງເລື້ອຍໆ, ໂດຍມີ ຄຳ ອະທິບາຍສັ້ນໆແລະຕົວຢ່າງທີ່ສອດຄ້ອງກັນເຊິ່ງແນ່ນອນຈະຊ່ວຍເພີ່ມຜົນຜະລິດຂອງທ່ານແລະຊ່ວຍໃຫ້ທ່ານຂຽນລະຫັດສັ້ນແລະມີຄວາມ ໝາຍ ນອກ ເໜືອ ຈາກການຫຼຸດຜ່ອນການໂຫຼດຂອງລະບົບ, ບາງຄັ້ງ.

ຜູ້ປະຕິບັດງານ Ampersand (&)

ໜ້າ ທີ່ຂອງ ‘&‘ ແມ່ນເຮັດໃຫ້ ຄຳ ສັ່ງ ດຳ ເນີນການຢູ່ເບື້ອງຫຼັງ. ພຽງແຕ່ພິມ ຄຳ ສັ່ງທີ່ຕິດຕາມມາດ້ວຍພື້ນທີ່ສີຂາວແລະ '&'. ທ່ານສາມາດປະຕິບັດຫຼາຍກວ່າ ໜຶ່ງ ຄຳ ສັ່ງໃນພື້ນຫລັງ, ໃນການໄປເທື່ອດຽວ.

ດໍາເນີນການຄໍາສັ່ງຫນຶ່ງໃນພື້ນຫລັງ:

[email :~$ ping ­c5 linux-console.net &

ດໍາເນີນການສອງຄໍາສັ່ງໃນພື້ນຫລັງ, ພ້ອມໆກັນ:

[email :/home/tecmint# apt-get update & apt-get upgrade &

ຜູ້ປະຕິບັດງານແບບເຄິ່ງຈໍ້າສອງເມັດ (;)

ຜູ້ປະຕິບັດງານແບບຈໍ້າສອງເມັດເຮັດໃຫ້ມັນສາມາດເຮັດວຽກໄດ້, ຫລາຍໆ ຄຳ ສັ່ງໃນເວລາດຽວແລະການປະຕິບັດ ຄຳ ສັ່ງເກີດຂື້ນຕາມ ລຳ ດັບ.

[email :/home/tecmint# apt-get update ; apt-get upgrade ; mkdir test

ການປະສົມປະສານ ຄຳ ສັ່ງຂ້າງເທິງນີ້ ທຳ ອິດຈະ ດຳ ເນີນການສອນການປັບປຸງ, ຫຼັງຈາກນັ້ນຍົກລະດັບ ຄຳ ແນະ ນຳ ແລະສຸດທ້າຍຈະສ້າງ "ທົດສອບ" ທີ່ຢູ່ພາຍໃຕ້ໄດເລກະທໍລີທີ່ເຮັດວຽກໃນປະຈຸບັນ.

3. ແລະຜູ້ປະຕິບັດງານ (&&)

AND Operator (&&) ຈະປະຕິບັດ ຄຳ ສັ່ງທີສອງເທົ່ານັ້ນ, ຖ້າການປະຕິບັດ ຄຳ ສັ່ງ ທຳ ອິດ SUCCEEDS, i, ສະຖານະການອອກຂອງ ຄຳ ສັ່ງ ທຳ ອິດແມ່ນ 0. ຄຳ ສັ່ງນີ້ມີປະໂຫຍດຫຼາຍໃນການກວດສອບສະຖານະການປະຕິບັດຂອງ ຄຳ ສັ່ງສຸດທ້າຍ.

ຕົວຢ່າງ, ຂ້ອຍຕ້ອງການເຂົ້າເບິ່ງເວບໄຊທ໌ linux-console.net ໂດຍໃຊ້ link ຄຳ ສັ່ງ, ຢູ່ປາຍທາງແຕ່ກ່ອນຂ້ອຍ ຈຳ ເປັນຕ້ອງກວດເບິ່ງວ່າເຈົ້າຂອງຢູ່ຫລືບໍ່.

[email :/home/tecmint# ping -c3 linux-console.net && links linux-console.net

4. ຜູ້ປະກອບການຫຼືຜູ້ປະຕິບັດງານ (||)

ຜູ້ປະຕິບັດງານ OR (ປະຕິບັດ) || ຜູ້ປະຕິບັດງານຂ້າງເທິງອະນຸຍາດໃຫ້ທ່ານປະຕິບັດຄໍາສັ່ງທີສອງເທົ່ານັ້ນຖ້າການປະຕິບັດຄໍາສັ່ງຄັ້ງທໍາອິດລົ້ມເຫລວ, ເຊັ່ນວ່າສະຖານະການອອກຈາກຄໍາສັ່ງທໍາອິດແມ່ນ '1'.

ຕົວຢ່າງ, ຂ້ອຍຕ້ອງການຈັດຕັ້ງປະຕິບັດ 'ປັບປຸງໃຫ້ທັນ apt-get' ຈາກບັນຊີທີ່ບໍ່ແມ່ນຮາກແລະຖ້າ ຄຳ ສັ່ງ ທຳ ອິດລົ້ມເຫລວ, ຫຼັງຈາກນັ້ນ ຄຳ ສັ່ງທີສອງ 'links linux-console.net' ຈະປະຕິບັດ.

[email :~$ apt-get update || links linux-console.net

ໃນ ຄຳ ສັ່ງຂ້າງເທິງ, ເນື່ອງຈາກຜູ້ໃຊ້ບໍ່ໄດ້ຮັບອະນຸຍາດໃຫ້ປັບປຸງລະບົບ, ມັນ ໝາຍ ຄວາມວ່າສະຖານະການອອກຂອງ ຄຳ ສັ່ງ ທຳ ອິດແມ່ນ ‘1’ ແລະເພາະສະນັ້ນ ຄຳ ສັ່ງສຸດທ້າຍ ‘links linux-console.net’ ຈະຖືກປະຕິບັດ.

ຈະເປັນແນວໃດຖ້າວ່າ ຄຳ ສັ່ງ ທຳ ອິດຖືກປະຕິບັດຢ່າງປະສົບຜົນ ສຳ ເລັດ, ມີສະຖານະການອອກ '0'? ເຫັນໄດ້ແຈ້ງ! ຄຳ ສັ່ງທີສອງຈະບໍ່ປະຕິບັດ.

[email :~$ mkdir test || links linux-console.net

ທີ່ນີ້, ຜູ້ໃຊ້ສ້າງໂຟນເດີ 'ທົດສອບ' ໃນໄດເລກະທໍລີບ້ານຂອງລາວ, ເຊິ່ງຜູ້ໃຊ້ຈະໄດ້ຮັບອະນຸຍາດ. ຄຳ ສັ່ງດັ່ງກ່າວໄດ້ປະຕິບັດໃຫ້ມີສະຖານະການທາງອອກຢ່າງ ສຳ ເລັດຜົນ ‘0’ ແລະເພາະສະນັ້ນພາກສ່ວນສຸດທ້າຍຂອງ ຄຳ ສັ່ງບໍ່ໄດ້ຖືກປະຕິບັດ.

5. ບໍ່ແມ່ນຜູ້ປະຕິບັດງານ (!)

ຜູ້ປະຕິບັດງານທີ່ບໍ່ແມ່ນ (!) ແມ່ນຄ້າຍຄືກັບ ຄຳ ວ່າ“ ຍົກເວັ້ນ. ຄຳ ສັ່ງນີ້ຈະ ດຳ ເນີນການທັງ ໝົດ ຍົກເວັ້ນເງື່ອນໄຂທີ່ໄດ້ ກຳ ນົດໄວ້. ເພື່ອເຂົ້າໃຈສິ່ງນີ້, ສ້າງໄດເລກະທໍລີ ‘tecmint’ ໃນລະບົບເຮືອນຂອງທ່ານແລະ 'cd' ໃສ່ມັນ.

[email :~$ mkdir tecmint 
[email :~$ cd tecmint

ຕໍ່ໄປ, ສ້າງຫລາຍປະເພດຂອງແຟ້ມໃນໂຟນເດີ ‘tecmint‘.

[email :~/tecmint$ touch a.doc b.doc a.pdf b.pdf a.xml b.xml a.html b.html

ເບິ່ງວ່າພວກເຮົາໄດ້ສ້າງທຸກເອກະສານ ໃໝ່ ພາຍໃນໂຟນເດີ ‘tecmint’.

[email :~/tecmint$ ls 

a.doc  a.html  a.pdf  a.xml  b.doc  b.html  b.pdf  b.xml

ດຽວນີ້ລຶບທຸກເອກະສານຍົກເວັ້ນ 'ເອກະສານ html' ທັງ ໝົດ ໃນເວລາດຽວກັນ, ດ້ວຍວິທີທີ່ສະຫຼາດ.

[email :~/tecmint$ rm -r !(*.html)

ພຽງແຕ່ກວດສອບ, ການປະຕິບັດຄັ້ງສຸດທ້າຍ. ຂຽນທຸກເອກະສານທີ່ມີຢູ່ໂດຍໃຊ້ ຄຳ ສັ່ງ ls.

[email :~/tecmint$ ls 

a.html  b.html

6. ແລະ - ຫຼືຜູ້ປະຕິບັດງານ OR (&& - ||)

ຜູ້ປະຕິບັດງານຂ້າງເທິງນີ້ແມ່ນຕົວຈິງຂອງການປະຕິບັດການ 'ແລະ' ແລະ 'ຫຼື' ຫຼື 'ຜູ້ປະຕິບັດງານ. ມັນຄ້າຍຄືກັບ ຄຳ ຖະແຫຼງທີ່ວ່າ "ຖ້າ - ອື່ນໆ".

ຍົກຕົວຢ່າງ, let’s ping to linux-console.net, ຖ້າຫາກວ່າຄວາມ ສຳ ເລັດເປັນສຽງເວົ້າທີ່ຖືກຢືນຢັນວ່າ“ ພິສູດອີກຢ່າງ ໜຶ່ງ ວ່າ“ Host Down”.

[email :~/tecmint$ ping -c3 linux-console.net && echo "Verified" || echo "Host Down"
PING linux-console.net (212.71.234.61) 56(84) bytes of data. 
64 bytes from linux-console.net (212.71.234.61): icmp_req=1 ttl=55 time=216 ms 
64 bytes from linux-console.net (212.71.234.61): icmp_req=2 ttl=55 time=224 ms 
64 bytes from linux-console.net (212.71.234.61): icmp_req=3 ttl=55 time=226 ms 

--- linux-console.net ping statistics --- 
3 packets transmitted, 3 received, 0% packet loss, time 2001ms 
rtt min/avg/max/mdev = 216.960/222.789/226.423/4.199 ms 
Verified

ດຽວນີ້, ຕັດການເຊື່ອມຕໍ່ອິນເຕີເນັດຂອງທ່ານ, ແລະລອງໃຊ້ ຄຳ ສັ່ງດຽວກັນອີກຄັ້ງ.

[email :~/tecmint$ ping -c3 linux-console.net && echo "verified" || echo "Host Down"
ping: unknown host linux-console.net 
Host Down

7. ຜູ້ປະຕິບັດງານ PIPE (|)

ຜູ້ປະຕິບັດງານ PIPE ນີ້ແມ່ນມີປະໂຫຍດຫຼາຍທີ່ຜົນຜະລິດຂອງ ຄຳ ສັ່ງ ທຳ ອິດເຮັດ ໜ້າ ທີ່ເປັນການປ້ອນຂໍ້ມູນໃສ່ ຄຳ ສັ່ງທີສອງ. ຍົກຕົວຢ່າງ, ທໍ່ຜົນຜະລິດຂອງ 'ls -l' ເພື່ອ 'ຫນ້ອຍລົງ' ແລະເບິ່ງຜົນໄດ້ຮັບຂອງຄໍາສັ່ງ.

[email :~$ ls -l | less

8. ຜູ້ປະຕິບັດການປະສົມ ຄຳ ສັ່ງ {}

ສົມທົບສອງຫຼືຫຼາຍ ຄຳ ສັ່ງ, ຄຳ ສັ່ງທີສອງແມ່ນຂື້ນກັບການປະຕິບັດ ຄຳ ສັ່ງ ທຳ ອິດ.

ຍົກຕົວຢ່າງ, ກວດເບິ່ງວ່າໄດເລກະທໍລີ ‘ຖັງ’ ມີຢູ່ຫລືບໍ່ແລະມີຜົນຜະລິດທີ່ກົງກັນ.

[email :~$ [ -d bin ] || { echo Directory does not exist, creating directory now.; mkdir bin; } && echo Directory exists.

9. ຜູ້ປະກອບການກ່ອນ()

ຜູ້ປະຕິບັດງານເຮັດໃຫ້ມັນສາມາດປະຕິບັດ ຄຳ ສັ່ງໃນ ລຳ ດັບຄວາມ ສຳ ຄັນ.

Command_x1 &&Command_x2 || Command_x3 && Command_x4.

ໃນ ຄຳ ສັ່ງ pseudo ຂ້າງເທິງນີ້, ຖ້າ Command_x1 ລົ້ມເຫລວ? ບໍ່ວ່າ Command_x2, Command_x3, Command_x4 ຈະບໍ່ຖືກປະຕິບັດ, ສຳ ລັບສິ່ງນີ້, ພວກເຮົາ ນຳ ໃຊ້ຜູ້ ນຳ ໜ້າ ກ່ອນ, ດັ່ງ:

(Command_x1 &&Command_x2) || (Command_x3 && Command_x4)

ໃນ ຄຳ ສັ່ງ pseudo ຂ້າງເທິງ, ຖ້າ Command_x1 ລົ້ມເຫລວ, Command_x2 ກໍ່ລົ້ມເຫລວແຕ່ວ່າຍັງ Command_x3 ແລະ ຄຳ ສັ່ງ Command_x4 ແມ່ນຂື້ນກັບສະຖານະການອອກຂອງ Command_x3.

10. ຜູ້ປະຕິບັດງານ Concatenation (\)

ຜູ້ປະຕິບັດງານ Concatenation (\) ດັ່ງທີ່ຊື່ໄດ້ລະບຸ, ແມ່ນໃຊ້ເພື່ອສະຫຼຸບ ຄຳ ສັ່ງຂະ ໜາດ ໃຫຍ່ໃນຫຼາຍເສັ້ນໃນຫອຍ. ຕົວຢ່າງ, ຄຳ ສັ່ງຂ້າງລຸ່ມນີ້ຈະເປີດການທົດສອບເອກະສານຂໍ້ຄວາມ (1) .txt.

[email :~/Downloads$ nano test\(1\).txt

ດຽວນີ້ ໝົດ ແລ້ວ. ຂ້ອຍ ກຳ ລັງຈະມາບົດຄວາມທີ່ ໜ້າ ສົນໃຈອີກບົດ ໜຶ່ງ ໃນໄວໆນີ້. ຈົນກ່ວາຫຼັງຈາກນັ້ນຈົ່ງເບິ່ງ, ສຸຂະພາບດີແລະເຊື່ອມຕໍ່ກັບ Tecmint. ຢ່າລືມໃຫ້ ຄຳ ຕິຊົມທີ່ມີຄ່າຂອງທ່ານໃນສ່ວນ ຄຳ ເຫັນຂອງພວກເຮົາ.