ฉันขอแนะนำให้คุณใช้ตัวคั่นชื่อตัวแปร ดังนั้นรหัสจะมีลักษณะดังนี้:
#!/bin/sh
# $0 is the script name, $1 id the first ARG, $2 is second...
NAME="$1"
mxmlc ${NAME}.as
flashplayerdebugger ${NAME}.sw
สิ่งนี้อนุญาตให้ใช้ตัวแปรในบริบทใด ๆ แม้แต่ในข้อความอื่น ตัวอย่างเช่น:
NewName="myFileIs${NAME}and that is all"
นี่จะขยายตัวแปร NAME ซึ่งจะถูกขนาบข้างด้วย "myFileIs" และที่ด้านหลังด้วย "และนั่นคือทั้งหมด" ตัวแปรจะขยายช่องว่างรวมอยู่ภายในสตริง ถ้า NAME คือ "ข้างในที่นี่" NewName จะเป็น "myFileIsinside ที่นี่และนั่นคือทั้งหมด"
บรรทัดคำสั่งสามารถรับตัวแปรได้สูงสุด 9 ตัว พวกเขาสามารถเป็นสตริงที่ยกมาซึ่งมีช่องว่างแต่ละสตริงที่ยกมานับเป็นตัวแปร เช่น:
./myProg var1 var 2 var3
ดังนั้น${1}เป็น"var1", ${2}ถูก"var", ${3}ถูก"2", ${4}ถูก"var3"
แต่:
./myProg var1 "var 2" var3
มี${1}เป็น"var1", ${2}คือ"var 2", ${3}เป็น"var3"
มีความสุข!
$2คืออาร์กิวเมนต์แรก$3อันดับที่สองเป็นต้น$1สงวนไว้สำหรับชื่อไฟล์ สำหรับสิ่งอื่น ๆ ฉันไม่เข้าใจความหมายของคุณ คุณกรุณาอธิบายให้ดีขึ้นหน่อยหรือเขียนรหัสบางอย่างได้ไหม