ข้อโต้แย้งที่คุณให้กับ bashscript จะปรากฏในตัวแปร$1
และ$2
และ$3
จำนวนที่หมายถึงการโต้แย้ง $0
เป็นคำสั่งเอง
อาร์กิวเมนต์ถูกคั่นด้วยช่องว่างดังนั้นหากคุณระบุ-from
และ-to
ในคำสั่งก็จะลงเอยด้วยตัวแปรเหล่านี้เช่นกันสำหรับสิ่งนี้:
./ocrscript.sh -from /home/kristoffer/test.png -to /home/kristoffer/test.txt
คุณจะได้รับ:
$0 # ocrscript.sh
$1 # -from
$2 # /home/kristoffer/test.png
$3 # -to
$4 # /home/kristoffer/test.txt
อาจเป็นการง่ายกว่าที่จะละเว้น-from
และ-to
เช่น:
ocrscript.sh /home/kristoffer/test.png /home/kristoffer/test.txt
จากนั้นคุณจะมี:
$1 # /home/kristoffer/test.png
$2 # /home/kristoffer/test.txt
ข้อเสียคือคุณจะต้องจัดหาตามลำดับที่ถูกต้อง มีไลบรารีที่ช่วยให้สามารถแยกวิเคราะห์อาร์กิวเมนต์ที่มีชื่อบนบรรทัดคำสั่งได้ง่ายขึ้น แต่โดยปกติแล้วสำหรับเชลล์สคริปต์แบบธรรมดาคุณควรใช้วิธีง่ายๆหากไม่มีปัญหา
จากนั้นคุณสามารถทำได้:
/usr/local/bin/abbyyocr9 -rl Swedish -if "$1" -of "$2" 2>&1
เครื่องหมายคำพูดคู่รอบ$1
และ$2
ไม่จำเป็นเสมอไป แต่จะได้รับการแนะนำเนื่องจากบางสตริงจะไม่ทำงานหากคุณไม่ใส่ไว้ระหว่างเครื่องหมายคำพูดคู่