ภายในเครื่องหมายคำพูดเดี่ยวเชลล์จะไม่ขยายสิ่งใด วางไว้ในเครื่องหมายคำพูดคู่แทน:
curl -u <my-api-token>: \
-X POST https://api.pushbullet.com/v2/pushes \
--header 'Content-Type: application/json' \
--data-binary '{"type": "note", "title": "'"$TR_TORRENT_NAME"'", \
"body": "'"$TR_TORRENT_NAME completed"'."}'
ตรวจสอบวิธีการทำงานโดยดูที่:
$ TR_TORRENT_NAME=MyTorrent
$ echo '{"type": "note", "title": "'"$TR_TORRENT_NAME"'", "body": "'"$TR_TORRENT_NAME completed"'."}'
{"type": "note", "title": "MyTorrent", "body": "MyTorrent completed."}
เมื่อตัวแปรเชลล์ปรากฏขึ้นมันจะอยู่ในเครื่องหมายคำพูดคู่เสมอ ดังนั้นจึงขยายอย่างเหมาะสม
การอ้างถึงสิ่งนี้เป็นเรื่องเล็กน้อย เรามีสตริงที่ยกมาเดี่ยวที่มีเครื่องหมายคำพูดคู่เป็นตัวอักษรและอยู่ถัดจากสตริงที่ยกมาคู่ หากต้องการทำความเข้าใจกับสิ่งนี้ให้ดีขึ้นเราลองนำส่วนนี้มาเป็นตัวอย่าง:
"'"$TR_TORRENT_NAME"'"
ทำให้ตัวละครแต่ละตัวในทางกลับกัน:
"
เป็นอักขระเครื่องหมายคำพูดสองตัวที่อยู่ภายในสตริงที่ยกมาเดี่ยว (เพื่อความกะทัดรัดจุดเริ่มต้นของสตริงนี้จะไม่แสดงในส่วนนี้)
'
ปิดสตริงที่มีเครื่องหมายคำพูดเดี่ยว
"
เปิดสตริงที่มีเครื่องหมายคำพูดคู่
$TR_TORRENT_NAME
เป็นตัวแปรเชลล์ที่ขยายภายในเครื่องหมายคำพูดคู่
"
ปิดสตริงที่มีเครื่องหมายคำพูดคู่
'
เปิดสตริงที่อ้างถึงเดี่ยวใหม่
"
วางอักขระเครื่องหมายคำพูดคู่ภายในสตริงที่มีเครื่องหมายคำพูดเดี่ยว