我需要将字符串参数传递给可能包含$字符的bash脚本。我不想强制将\插入到脚本之外的字符串中。
我试图在脚本中执行此操作,但无法弄清楚如何执行此操作。
我在脚本的后面有一个类似的问题,我用“read”读取了一个字符串。我只能通过强制用户输入\ $来实现它,这对我的应用程序不起作用。
有什么建议吗?
答案 0 :(得分:3)
如果您不想用反斜杠转义$
,那么唯一的另一种方法是用单引号包围参数。将'裸'$
传递到您的脚本是不可能的,因为shell会尝试扩展它。使用单引号可防止shell扩展,并将保留$
。
例如:
myscript.sh '$foo'