อัญประกาศเดี่ยวล้อมรอบค่าที่จะต้องดำเนินการอย่างแท้จริง: การขยายตัวทุกประเภทจะถูกระงับ มักจะใช้ในกรณีที่มูลค่ารวมหรืออาจรวมถึงพื้นที่สีขาว (ช่องว่าง, แท็บบรรทัดใหม่) หรืออักขระพิเศษ ( $
, \
, `
) ที่ผู้ใช้ไม่ต้องการที่จะขยาย / ได้รับการปฏิบัติเป็นพิเศษโดยเปลือก
เครื่องหมายอัญประกาศคู่ล้อมรอบค่าซึ่งจะมีตัวแปรและการแทนที่อักขระเสร็จแล้ว จำเป็นเมื่อเอาต์พุตอาจมีช่องว่างและต้องกำหนดเป็นค่าเดียว
เครื่องหมายคำพูดย้อนกลับล้อมรอบคำสั่งผลลัพธ์ที่ต้องการเป็นค่า เปลือกหอยที่ใหม่กว่าอนุญาตให้ใช้ในสถานที่ของ$(...)
`...`
ฉันชอบวิธีที่ใหม่กว่า
รหัสต่อไปนี้อาจช่วยให้เข้าใจสิ่งที่เกิดขึ้น
CMD = 'ls.'
echo sq: $ CMD
ตั้งค่า $ CMD
echo raw 1: $ 1
echo raw: $ *
ตั้งค่า "$ CMD"
echo dq: $ 1
echo bq: `$ CMD`
echo ใหม่: $ ($ CMD)
\
จะถือว่าเสมอตัวอักษรเมื่อล้อมรอบในราคาเดียวถึงแม้ว่ามันจะแจ๋ว'
หลังจากการเปิดตัว'
รายการถัดไป'
จะถูกตีความเป็นเครื่องหมายคำพูดปิดเสมอ บางอย่างเช่นการอ้างถึง'
ในสตริงที่ยกมาเดี่ยวสามารถทำได้โดยการจบการพูดการหลบหนีเป็น'
รายบุคคลและเริ่มต้นการอ้างอิงอีกครั้ง นั่นคือแม้ว่า\'
จะไม่ทำงานระหว่างการเปิดและปิด'
อักขระ'\''
แต่ (ดูการแก้ไขGillesของหนึ่งในโพสต์ของฉันเมื่อฉันทำผิดพลาดเหมือนกันสำหรับรายละเอียด.)