假设我有一个名为dd.sh的脚本,我像这样运行它
./dd.sh sample$name.mp4
因此
$1
是字符串sample$name.mp4
。echo '$1' // shows $1
echo "$1" // shows sample.mp4
然后如何处理
$1
,以便我可以检测到参数$1
中是否存在美元符号我想将字符串处理为
sample\$name.mp4
或仅检测参数$filename
中是否存在美元符号 最佳答案
如您所知,美元符号标记为变量。键入时必须考虑到它。
你可以逃脱美元
./dd.sh "sample\$name.mp4"
或只用单引号输入
./dd.sh 'sample$name.mp4'
要检查变量中是否有美元符号,请执行
[[ $variable == *\$* ]] && echo 'I HAZ A DOLAR!!!' || echo 'MEH'
关于bash - 通过 shell 脚本在字符串中转义美元符号,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/37876778/