Shell Script เป็นภาษาโปรแกรมมิ่งที่ใช้สำหรับสร้างสคริปต์ที่ทำงานบนระบบปฏิบัติการ Linux หรือ Unix-based อื่นๆ เช่น macOS, FreeBSD, ฯลฯ ซึ่งช่วยให้ผู้ใช้งานสามารถทำงานอัตโนมัติหรือเรียกใช้คำสั่งต่างๆ โดยอัตโนมัติผ่านการรันสคริปต์ได้อย่างสะดวกและรวดเร็วมากยิ่งขึ้น
ต่อไปนี้คือขั้นตอนในการเขียน Shell Script พื้นฐานสำหรับผู้เริ่มต้น:
- เลือก text editor ที่สะดวกสำหรับตัวเอง เช่น nano, vi, emacs, ฯลฯ
- เปิด text editor และเริ่มต้นเขียน Shell Script ด้วยการกำหนด Interpreter ให้กับไฟล์ Shell Script ในบรรทัดแรกด้วย #!/bin/bash หรือ #!/bin/sh ซึ่งต่างกันตาม shell ที่จะใช้รันสคริปต์ ในตัวอย่างนี้จะใช้ bash เป็น shell
#!/bin/bash
- เขียนคำสั่งต่างๆ ที่ต้องการให้สคริปต์ทำงาน แต่ละคำสั่งจะเริ่มต้นด้วยชื่อคำสั่งและตามด้วยอาร์กิวเมนต์ (argument) ซึ่งมีความหมายแตกต่างกันไปตามคำสั่งนั้นๆ ตัวอย่างเช่น:
#!/bin/bash echo "Hello, World!"
04. บันทึกไฟล์สคริปต์ด้วยนามสกุล .sh เพื่อให้เป็นไฟล์ Shell Script และให้สิทธิ์การเข้าถึงไฟล์ (permission) โดยใช้คำสั่ง chmod ตามด้วยเลขสิทธิ์ เช่น 755 หรือ 700
chmod 755 myscript.sh
05. รันสคริปต์โดยใช้คำสั่ง ./<ชื่อไฟล์>.sh เพื่อเรียกใช้สคริปต์ ตัวอย่างเช่น:
./myscript.sh
06. สามารถใช้ตัวแปร (variable) ในการเก็บค่าหรือคำสั่งเพื่อนำมาใช้ในสคริปต์ได้ โดยใช้เครื่องหมาย $ ตามด้วยชื่อตัวแปร ตัวอย่างเช่น:
#!/bin/bash name="John" echo "Hello, $name"
07. สามารถใช้คำสั่งเงื่อนไข (if statement) เพื่อตรวจสอบเงื่อนไขและดำเนินการตามผลลัพธ์ โดยใช้เครื่องหมาย [ ] หรือ [[ ]] และเชื่อมกับตัวแปรหรือค่าด้วยเครื่องหมาย =, !=, -eq, -lt, -gt เป็นต้น ตัวอย่างเช่น:
#!/bin/bash number=5 if [ $number -eq 5 ]; then echo "Number is equal to 5" fi
08. สามารถใช้วงวน (loop) เพื่อทำซ้ำการดำเนินการหลายครั้ง โดยใช้คำสั่ง for หรือ while ร่วมกับตัวแปรหรือค่าต่างๆ ตัวอย่างเช่น:
#!/bin/bash for i in 1 2 3; do echo "Number $i" done
หรือ
#!/bin/bash counter=0 while [ $counter -lt 5 ]; do echo "Counter is $counter" ((counter++)) done
09. สามารถรับอินพุตจากผู้ใช้งาน (user input) ผ่านคำสั่ง read และเก็บค่าไว้ในตัวแปรได้ ตัวอย่างเช่น:
#!/bin/bash echo "What is your name?" read name echo "Hello, $name"
10. สามารถใช้ฟังก์ชัน (function) เพื่อทำงานซ้ำหลายครั้งและสามารถเรียกใช้ได้หลายครั้ง โดยใช้คำสั่ง function และชื่อฟังก์ชันตามด้วยวงเล็บ () และใส่คำสั่งที่ต้องการให้ฟังก์ชันทำซ้ำได้ ตัวอย่างเช่น:
#!/bin/bash function printName { echo "My name is John" } printName
จะได้ผลลัพธ์เป็น:
My name is John
11. สามารถใช้คำสั่ง case สำหรับตรวจสอบเงื่อนไขหลายรูปแบบ โดยเรียกใช้แต่ละเงื่อนไขด้วยคำสั่ง case และเปรียบเทียบค่าด้วยเครื่องหมาย * หรือตัวอักษรอื่นๆ เช่น:
#!/bin/bash echo "What is your favorite color?" read color case $color in "red") echo "Your favorite color is red" ;; "blue") echo "Your favorite color is blue" ;; *) echo "Your favorite color is not red or blue" ;; esac
12. สามารถเรียกใช้คำสั่งอื่นๆในระบบด้วยคำสั่ง subprocess และส่งค่าไปยังสคริปต์ได้ โดยใช้เครื่องหมาย $() หรือ เพื่อครอบคำสั่ง ตัวอย่างเช่น:
#!/bin/bash echo "The date is $(date)"
จะได้ผลลัพธ์เป็น:
The date is Fri Mar 18 12:08:31 UTC 2023
นี่เป็นเพียงตัวอย่างของการเขียน Shell Script พื้นฐานสำหรับผู้เริ่มต้น ซึ่งสามารถนำไปใช้งานได้กับระบบ Linux หรือ Unix อื่นๆ ที่ใช้ Shell เป็นตัวบริหารจัดการคำสั่งได้ หากต้องการเรียนรู้เพิ่มเติม สามารถเรียนรู้จากเอกสารอื่นๆ ที่มีอยู่ออนไลน์ได้ง่ายๆ หรือเรียนรู้จากหนังสือเกี่ยวกับ Shell Script และ Linux อื่นๆ ที่เว็บไซต์ Aoo Studio
0 ความคิดเห็น