ในบทช่วยสอนนี้ เราจะเรียนรู้วิธีสร้างและเรียกใช้สคริปต์ทุบตีอย่างง่ายซึ่งพิมพ์คำว่า “สวัสดีชาวโลก”
Shebang คืออะไร (#!)
ทุกเชลล์สคริปต์เริ่มต้นด้วย Shebang #!
สัญลักษณ์ มีการประกาศไว้ที่บรรทัดแรกของสคริปต์และโดยทั่วไปจะบอกเชลล์ว่าจะใช้ล่ามตัวใดในการรันสคริปต์
#!/bin/bash
...
สคริปต์ Hello World Bash
ตอนนี้ เรากำลังจะสร้าง bash script ที่พิมพ์คำว่า “Hello World” ในเทอร์มินัล
ขั้นแรกให้สร้างไฟล์ชื่อ hello_world.sh
. ใช้เทอร์มินัลที่เราเขียน:
$ touch hello_world.sh
ไฟล์ของเราถูกสร้างขึ้นแล้ว
ถัดไป เปิดไฟล์ในโปรแกรมแก้ไขที่คุณชื่นชอบ ฉันใช้นาโน ดังนั้นมันจะเป็น:
$ nano hello_world.sh
เมื่อ hello_world.sh
เปิดอยู่ในโปรแกรมแก้ไขของคุณ พิมพ์คำสั่งต่อไปนี้:
#!/bin/bash
echo "Hello World"
เรียกใช้สคริปต์เชลล์
ตอนนี้พิมพ์ hello world
เราต้องรันเชลล์สคริปต์ที่เราสร้างขึ้น
มีหลายวิธีในการรันเชลล์สคริปต์
$ sh ./hello_world.sh ## incorrect
$ ./hello_world.sh ## correct
$ bash ./hello_world.sh ## correct
วิธีแรกไม่ถูกต้อง เนื่องจากคุณกำลังบอกให้เชลล์ใช้ตัวแปลเชลล์ไม่ใช่ตัวแปล bash
วิธีที่สองถูกต้องเพราะเราเพิ่งเรียกใช้สคริปต์ซึ่งจะใช้ล่ามที่กำหนดไว้ในไฟล์ บรรทัดแรกในสคริปต์คือ #!/bin/bash
.
วิธีที่สามก็ถูกต้องเช่นกัน เพราะในกรณีนี้ เรากำลังบอกให้ใช้ตัวแปล bash ซึ่งเหมือนกับวิธีที่กำหนดไว้ในไฟล์
การอนุญาตถูกปฏิเสธเมื่อเรียกใช้งานเชลล์สคริปต์
หากคุณพยายามเรียกใช้สคริปต์โดยใช้:
$ ./hello_world.sh
-bash: ./hello_world.sh: Permission denied
คุณจะเห็นข้อผิดพลาดถูกปฏิเสธการอนุญาต เนื่องจากสคริปต์ไม่ได้รับอนุญาตให้ดำเนินการ
คุณสามารถให้สิทธิ์ในการดำเนินการกับสคริปต์ได้โดยใช้:
$ chmod +x ./hello_world.sh
ตอนนี้ หากคุณเรียกใช้สคริปต์อีกครั้ง คุณจะเห็นคำว่า “Hello World” พิมพ์ออกมา:
$ ./hello_world.sh
Hello World