Bash Scripting เบื้องต้น
Alex Scriven
Data Scientist
ใน Bash scripting มี 'streams' สำหรับโปรแกรม 3 ประเภท:
โดยค่าเริ่มต้น สตรีมเหล่านี้จะรับและแสดงผลผ่านเทอร์มินัล
อาจพบ 2> /dev/null ในการเรียกสคริปต์ ซึ่งเป็นการเปลี่ยนทิศทาง STDERR ให้ถูกลบทิ้ง (1> /dev/null จะเป็น STDOUT)
ภาพด้านล่างแสดง standard streams โดยใช้ pipeline ที่สร้างไว้ก่อนหน้า:

ลองพิจารณาไฟล์ข้อความ (sports.txt) ที่มีข้อมูล 3 บรรทัด
football
basketball
swimming
คำสั่ง cat sports.txt 1> new_sports.txt เป็นตัวอย่างการนำข้อมูลจากไฟล์แล้วเขียน STDOUT ลงในไฟล์ใหม่ ลองดูผลเมื่อรัน cat new_sports.txt
football
basketball
swimming
แนวคิดสำคัญใน Bash scripting คือ arguments
สคริปต์ Bash รับ arguments มาใช้งานภายในได้ โดยเพิ่มช่องว่างหลังคำสั่งรันสคริปต์
$ เช่น ตัวแรกคือ $1 ตัวที่สองคือ $2 เป็นต้น$@ และ $* ให้ arguments ทั้งหมดใน ARGV$# ให้จำนวน argumentsลองดูตัวอย่างสคริปต์ (args.sh):
#!/usr/bash
echo $1
echo $2
echo $@
echo "There are " $# "arguments"
เมื่อรัน bash args.sh one two three four five
one
two
one two three four five
There are 5 arguments
#!/usr/bash
echo $1
echo $2
echo $@
echo "There are " $# "arguments"
Bash Scripting เบื้องต้น