ແນະນໍາ Beginners ກັບ BASH - Part 1 - ສະບາຍດີໂລກ

ມີຫລາຍໆຄໍາແນະນໍາກ່ຽວກັບອິນເຕີເນັດທີ່ສະແດງວິທີການສ້າງສະຄິບ Shell ໂດຍໃຊ້ BASH ແລະຄູ່ມືນີ້ມີຈຸດມຸ່ງຫມາຍເພື່ອໃຫ້ spin ແຕກຕ່າງກັນເລັກນ້ອຍເພາະວ່າມັນໄດ້ຖືກຂຽນໂດຍໃຜຜູ້ຫນຶ່ງທີ່ມີປະສົບການ script shell ຫນ້ອຍຫຼາຍ.

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

ຂ້າພະເຈົ້າເປັນຜູ້ພັດທະນາຊໍແວໂດຍການຄ້າແລະຂ້າພະເຈົ້າເປັນມື dab ຢູ່ໃນພາສາສະຄິບເຊັ່ນ PERL, PHP ແລະ VBScript.

ຈຸດຂອງຄູ່ມືນີ້ແມ່ນວ່າທ່ານຈະຮຽນຮູ້ເມື່ອຂ້າພະເຈົ້າຮຽນຮູ້ແລະຂໍ້ມູນໃດໆທີ່ຂ້າພະເຈົ້າເອົາມາໃຫ້ຂ້ອຍຈະສົ່ງໃຫ້ທ່ານ.

ການເລີ່ມຕົ້ນ

ມີແນ່ນອນວ່າຫຼາຍໆທິດສະດີທີ່ຂ້ອຍສາມາດສົ່ງໃຫ້ທ່ານທັນທີເຊັ່ນ: ການອະທິບາຍ ປະເພດຕ່າງໆຂອງແກະ ແລະຄວາມໄດ້ປຽບຂອງການໃຊ້ BASH ຫຼາຍກວ່າ KSH ແລະ CSH.

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

ສິ່ງທີ່ທ່ານຕ້ອງການສໍາລັບການປະຕິບັດຕາມຄູ່ມືນີ້ແມ່ນການແກ້ໄຂຂໍ້ຄວາມແລະເທີມິນັນທີ່ໃຊ້ BASH (Shell ເລີ່ມຕົ້ນໃນການແຈກແຈງ Linux ຫຼາຍທີ່ສຸດ).

ຕົວແກ້ໄຂຂໍ້ຄວາມ

ຄູ່ມືອື່ນໆທີ່ຂ້າພະເຈົ້າໄດ້ອ່ານໄດ້ແນະນໍາວ່າທ່ານຕ້ອງການບັນນາທິການຂໍ້ຄວາມເຊິ່ງປະກອບມີລະຫັດສີຂອງຄໍາສັ່ງແລະບັນນາທິການທີ່ແນະນໍາແມ່ນທັງ VIM ຫຼື EMACS .

ລະຫັດສີແມ່ນງາມຍ້ອນວ່າມັນສະແດງຄໍາສັ່ງທີ່ທ່ານພິມແຕ່ສໍາລັບຜູ້ເລີ່ມຕົ້ນຢ່າງແທ້ຈິງທ່ານສາມາດໃຊ້ເວລາສອງສາມອາທິດທໍາອິດທີ່ຮຽນຮູ້ VIM ແລະ EMACS ໂດຍບໍ່ຕ້ອງຂຽນລະຫັດດຽວ.

ອອກຈາກສອງຄົນຂ້າພະເຈົ້າມັກ EMACS ແຕ່ເປັນຄົນທີ່ຊື່ສັດຂ້ອຍມັກໃຊ້ບັນນາທິການງ່າຍໆເຊັ່ນ nano , gedit ຫຼື leafpad.

ຖ້າທ່ານຂຽນ scripts ໃນຄອມພິວເຕີຂອງທ່ານເອງແລະທ່ານຮູ້ວ່າທ່ານຈະສາມາດເຂົ້າເຖິງສະພາບແວດລ້ອມຮູບພາບແລ້ວທ່ານຈະສາມາດເລືອກເອົາບັນນາທິການທີ່ເຮັດວຽກທີ່ດີທີ່ສຸດສໍາລັບທ່ານແລະມັນສາມາດເປັນຮູບພາບເຊັ່ນ: GEdit ຫຼືບັນນາທິການທີ່ເຮັດວຽກໂດຍກົງໃນ terminal ເຊັ່ນ: nano ຫຼື vim.

ສໍາລັບຈຸດປະສົງຂອງຄູ່ມືນີ້ຂ້ອຍຈະໃຊ້ nano ຍ້ອນວ່າມັນຖືກຕິດຕັ້ງຢູ່ໃນສ່ວນໃຫຍ່ຂອງການແຈກແຈງ Linux ແລະດັ່ງນັ້ນທ່ານຈຶ່ງຈະສາມາດເຂົ້າເຖິງມັນໄດ້.

ການເປີດ window terminal

ຖ້າທ່ານກໍາລັງໃຊ້ການແຈກແຈງ Linux ກັບ desktop ເຊັ່ນ Linux Mint ຫຼື Ubuntu ທ່ານສາມາດເປີດ window terminal ໂດຍກົດ CTRL + ALT + T.

ບ່ອນໃດທີ່ຈະໃສ່ສະຄິບຂອງທ່ານ

ສໍາລັບຈຸດປະສົງຂອງບົດຮຽນນີ້ທ່ານສາມາດໃສ່ສະຄິບຂອງທ່ານຢູ່ໃນໂຟເດີພາຍໃນໂຟນເດີທີ່ຢູ່ເຮືອນຂອງທ່ານ.

ພາຍໃນປ່ອງຢ້ຽມສຸດທ້າຍໃຫ້ແນ່ໃຈວ່າທ່ານຢູ່ໃນໂຟນເດີທີ່ຢູ່ເຮືອນໂດຍການພິມຄໍາສັ່ງຕໍ່ໄປນີ້:

cd ~

ຄໍາສັ່ງ cd stands for change directory ແລະ tilde (~) ເປັນທາງລັດສໍາລັບໂຟເດີບ້ານຂອງທ່ານ.

ທ່ານສາມາດກວດສອບວ່າທ່ານຢູ່ໃນສະຖານທີ່ທີ່ຖືກຕ້ອງໂດຍການພິມຄໍາສັ່ງຕໍ່ໄປນີ້:

pwd

ຄໍາສັ່ງ pwd ຈະບອກທ່ານໄດເລກະທໍລີການເຮັດວຽກໃນປະຈຸບັນຂອງທ່ານ (ບ່ອນທີ່ທ່ານຢູ່ໃນຕົ້ນໄມ້ຂອງໄດເລກະທໍລີ). ໃນກໍລະນີຂອງຂ້ອຍມັນກັບ / home / gary.

ໃນປັດຈຸບັນແນ່ນອນທ່ານຈະບໍ່ຕ້ອງການໃຫ້ອັກສອນຂອງທ່ານເຂົ້າໄປໃນໂຟເດີເຮືອນເພື່ອສ້າງໂຟເດີທີ່ເອີ້ນວ່າ scripts ໂດຍການພິມຄໍາສັ່ງຕໍ່ໄປນີ້.

mkdir scripts

ປ່ຽນເປັນໂຟເດີສະຄິບໃຫມ່ໂດຍການພິມຄໍາສັ່ງຕໍ່ໄປນີ້:

cd scripts

Your First Script

ມັນເປັນປະເພນີໃນເວລາທີ່ຮຽນຮູ້ວິທີການທີ່ຈະເຮັດໃຫ້ໂຄງການທໍາອິດພຽງແຕ່ອອກຄໍາສັບ "Hello World".

ຈາກໂຟນເດີສະຄິບຂອງທ່ານໃສ່ຄໍາສັ່ງຕໍ່ໄປນີ້:

nano helloworldsh

ຕອນນີ້ໃສ່ລະຫັດດັ່ງຕໍ່ໄປນີ້ໃນຫນ້າຕ່າງ nano.

#! / bin / bash echo "hello world"

ກົດ CTRL + O ເພື່ອບັນທຶກໄຟລ໌ແລະ CTRL + X ເພື່ອອອກຈາກ nano.

ຕົວອັກສອນຕົວມັນເອງກໍ່ຄືດັ່ງນີ້:

#! / bin / bash ຕ້ອງຖືກລວມຢູ່ເທິງສຸດຂອງ script ທັງຫມົດທີ່ທ່ານຂຽນຍ້ອນວ່າມັນສາມາດເຮັດໃຫ້ນາຍພາສາແລະລະບົບປະຕິບັດການຮູ້ວິທີການຈັດການໄຟລ໌. ໂດຍພື້ນຖານແລ້ວຈົ່ງຈື່ໄວ້ວ່າມັນຈະເຮັດໃຫ້ມັນລືມແລະລືມກ່ຽວກັບເຫດຜົນທີ່ທ່ານເຮັດ.

ເສັ້ນທີສອງມີຄໍາສັ່ງດຽວທີ່ເອີ້ນວ່າ echo ເຊິ່ງສະແດງຂໍ້ຄວາມທີ່ທັນທີຕໍ່ໄປນີ້.

ໃຫ້ສັງເກດວ່າຖ້າທ່ານຕ້ອງການສະແດງຂໍ້ຄວາມຫຼາຍກວ່າຫນຶ່ງທ່ານຕ້ອງໃຊ້ວົງຢືມຄູ່ (") ປະມານຄໍາ.

ຕອນນີ້ທ່ານສາມາດເອີ້ນໃຊ້ສະຄິບໂດຍການພິມຄໍາສັ່ງຕໍ່ໄປນີ້:

sh helloworldsh

ຄໍາວ່າ "ສະບາຍດີໂລກ" ຄວນປາກົດ.

ອີກວິທີທີ່ຈະດໍາເນີນການສະຄິບມີດັ່ງນີ້:

/helloworldsh

ໂອກາດແມ່ນວ່າຖ້າທ່ານດໍາເນີນການຄໍາສັ່ງທີ່ຢູ່ໃນທ່າຂອງທ່ານທັນທີທ່ານຈະໄດ້ຮັບຂໍ້ຜິດພາດອະນຸຍາດ.

ໃຫ້ການອະນຸຍາດໃຫ້ໃຊ້ສະຄິບໃນແບບນີ້ໂດຍປະເພດດັ່ງຕໍ່ໄປນີ້:

sudo chmod + x helloworldsh

ດັ່ງນັ້ນສິ່ງທີ່ເກີດຂຶ້ນຈິງບໍ່? ເປັນຫຍັງທ່ານສາມາດດໍາເນີນການ hellfireworld.sh ໂດຍບໍ່ມີການປ່ຽນແປງອະນຸຍາດແຕ່ວ່າການເຮັດວຽກ. / helloworld.sh ເຮັດໃຫ້ເກີດບັນຫາ?

ວິທີການທໍາອິດ loads ການແປພາສາ bash ທີ່ໃຊ້ເວລາ helloworld.sh ເປັນການປະກອບແລະເຮັດວຽກອອກສິ່ງທີ່ຕ້ອງເຮັດກັບມັນ. ການແປພາສາ bash ແລ້ວມີສິດໃນການດໍາເນີນການແລະພຽງແຕ່ຕ້ອງການທີ່ຈະໃຊ້ຄໍາສັ່ງໃນ script.

ວິທີທີສອງສາມາດເຮັດໃຫ້ລະບົບປະຕິບັດການເຮັດວຽກຫຍັງກ່ຽວກັບ script ແລະດັ່ງນັ້ນມັນຮຽກຮ້ອງໃຫ້ມີ bit ປະຕິບັດງານເພື່ອປະຕິບັດ.

script ຂ້າງເທິງນີ້ແມ່ນດີແຕ່ວ່າຈະເກີດຫຍັງຂຶ້ນຫາກທ່ານຕ້ອງການສະແດງເຄື່ອງຫມາຍຄໍາເຕືອນ?

ມີວິທີຕ່າງໆເພື່ອບັນລຸເປົ້າຫມາຍນີ້. ຕົວຢ່າງເຊັ່ນທ່ານສາມາດເຮັດໃຫ້ມີຮອຍຍິ້ມຍ້ອນກັບມາກ່ອນເຄື່ອງຫມາຍຄໍາສັບດັ່ງຕໍ່ໄປນີ້:

echo \ "hello world \"

ນີ້ຈະຜະລິດຜົນຜະລິດ "ສະບາຍດີໂລກ".

ລໍຖ້ານາທີ, ຖ້າທ່ານຕ້ອງການສະແດງ \ "hello world \"?

ດີທ່ານສາມາດຫລົບຫນີລັກສະນະ escape ໄດ້ເຊັ່ນກັນ

echo \\ "\" hello world \\ "\"

ນີ້ຈະຜະລິດຜົນຜະລິດ \ "hello world \".

ຕອນນີ້ຂ້ອຍຮູ້ວ່າເຈົ້າຄິດແນວໃດ. ແຕ່ຂ້ອຍກໍ່ຕ້ອງການສະແດງ \\ "\" ສະບາຍດີໂລກ \\ "\"

ການໃຊ້ echo ກັບລັກສະນະ escape ເຫຼົ່ານີ້ທັງຫມົດສາມາດໄດ້ຮັບການ silly ຂ້ອນຂ້າງ. ມີຄໍາສັ່ງທາງເລືອກທີ່ທ່ານສາມາດໃຊ້ເອີ້ນ printf.

ຍົກ​ຕົວ​ຢ່າງ:

printf '% s \ n' '\\ "\" hello world \\ "\"'

ໃຫ້ສັງເກດວ່າຂໍ້ຄວາມທີ່ພວກເຮົາຕ້ອງການສະແດງຢູ່ໃນລະຫວ່າງຄໍາເວົ້າດຽວ. ຄໍາສັ່ງພິມ printf ສົ່ງຂໍ້ຄວາມຈາກ script ຂອງທ່ານ. % s ຫມາຍຄວາມວ່າມັນຈະສະແດງສະຕິງ, \ n ເອົາສາຍໃຫມ່.

Summary

ພວກເຮົາບໍ່ໄດ້ກວມເອົາພື້ນທີ່ຫຼາຍໆຢ່າງໃນແຕ່ສ່ວນຫນຶ່ງແຕ່ພວກເຮົາຫວັງວ່າທ່ານຈະມີ script ທໍາອິດຂອງທ່ານເຮັດວຽກ.

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