0
我將帶有JSON的ENVs傳遞給Docker。我需要在shell上使用一個字符串作爲參數。在shell中,轉義單引號的正確方法是使用'\''
。所以,"Tom's Market"
變得"Tom'\''s Market"
爲:轉義shell的單引號
docker run -it -e FOO='["Tom'\''s Market"]' ...
Ruby的Shellwords似乎沒有這樣做。
Shellwords.shellescape('["Tom\'s Market"]')
#=> \[\"Tom\'s\ Market\"\]
所以我想用簡單的查找/替換:
'["Tom\'s Market"]'.gsub("'", "'\\''")
#=> ["Tom's Market"]'s Market"]
我不知道發生了什麼事情在那裏。有人能幫我嗎?
非常感謝您! – 2015-02-06 15:58:06
儘管我討厭承認它,但至少有一次在我的生活中,我已經添加了反斜槓,直到它工作,... – ioquatix 2016-10-20 09:27:23