작은 따옴표 내에서 쉘은 아무것도 확장하지 않습니다. 대신 큰 따옴표 안에 넣으십시오.
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
큰 따옴표 안에 확장 된 쉘 변수입니다.
"
큰 따옴표로 묶인 문자열을 닫습니다.
'
작은 따옴표로 묶은 새 문자열을 엽니 다.
"
작은 따옴표로 묶은 문자열 안에 큰 따옴표 문자를 넣습니다.