通过 shell 脚本在字符串中转义美元符号 [英] Escape dollar sign in string by shell script
本文介绍了通过 shell 脚本在字符串中转义美元符号的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
假设我有一个名为 dd.sh 的脚本,我像这样运行它
Suppose I have a script named dd.sh, and I run it like this
./dd.sh sample$name.mp4
所以 $1
是字符串 sample$name.mp4
.
echo '$1' // shows $1
echo "$1" // shows "sample.mp4"; want "sample$name.mp4"
然后如何处理$1
,可以检测参数$1
Then how to process $1
that I can detect whether there is a dollar sign in parameter $1
我想将字符串处理为sample$name.mp4
或者只是检测参数$filename
I want to process the string to sample$name.mp4
or just detect whether there is a dollar sign in parameter $filename
推荐答案
如您所知,美元符号标记一个变量.您在输入时必须考虑到这一点.
As you know, a dollar sign marks a variable. You have to take it into account when you are typing it.
你可以逃避美元
./dd.sh "sample$name.mp4"
或者只用单引号输入
./dd.sh 'sample$name.mp4'
<小时>
要检查变量中是否有美元符号,请执行
To check if there is a dollar sign in a variable, do
[[ $variable == *$* ]] && echo 'I HAZ A DOLAR!!!' || echo 'MEH'
这篇关于通过 shell 脚本在字符串中转义美元符号的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文