2013-10-24 98 views

回答

1

我假設有一個錯誤概念,以你的問題爲理由。引用最有可能解決您的情況。但是,也許你還沒有找到正確的引用方式或類似的方式。

如果你的危險字符串應該逐字(沒有引號或轉義)的源代碼,你可以把它放在一個單獨的文件,並從那裏閱讀:

dangerous_string=$(cat dangerous_string_file.txt) 

如果它應不解釋傳遞一個命令,使用雙引號,以防止解釋:

my_command "$dangerous_string" 

如果你將它傳遞給需要,因爲它是已知不慎傳遞字符串不使用某物收到您的字符串的引用版本的命令像雙引號至頁r事件的解釋,你可以隨時使用printf得到引述版本:

quoted_dangerous_string=$(printf "%q" "$dangerous_string") 
careless_command "$quoted_dangerous_string" 

如果所有這些選項並不在你的情況幫助,請更詳細地解釋其中的問題所在。

+0

非常有用的建議。謝謝。 – user2431763