我目前正在使用以下解决方案。
'string'
variable="'"$(echo -E "$variable" | perl -pe "s/'/'\"'\"'/g;")"'"
"string"
variable='"'$(echo -E "$variable" | perl -pe 's/(?=[\\"])/\\/g;')'"'
echo -E
在某些环境中无效... 你知道更好吗?
我知道我们可以使用临时环境变量执行。
NAME=VALUE command
但是,某些程序没有提供任何访问它们的方法。
我发现AppleScript可以用on run argv ~ end run
语法处理参数。
答案 0 :(得分:1)
引号是AppleScript语法的一部分,因此应与实际数据分开。
osascript -e "log \"$variable\""
或
osascript -e "log '$variable'"