写了一个shell处理从windows传过来的文件,部分文件名包含:$。比如:aaa$aaa.txt
shell处理时就有问题了,aaa$aaa.txt 中的$aaa会被识别成变量值,这个怎么解决?求大神帮忙啊!
如果你用
'aaa$aaa.txt'
温馨提示:答案为网友推荐,仅供参考
第1个回答 2015-06-10
一般使用 加上单引号'',就可以不让$当成变量;
如:echo aaa$aaa.txt '返回aaa.txt
echo 'aaa$aaa.txt' ' 返回 aaa$aaa.txt
另外,Shell处理时一般是将文件名放到变量中,如:
for i in `dir`
do
echo $i
done
如果目录下有带有$的文件名,在echo $i 语句中并没有影响。
如果你遇到了特定的问题,可以发出来想办法解决。本回答被提问者和网友采纳
如:echo aaa$aaa.txt '返回aaa.txt
echo 'aaa$aaa.txt' ' 返回 aaa$aaa.txt
另外,Shell处理时一般是将文件名放到变量中,如:
for i in `dir`
do
echo $i
done
如果目录下有带有$的文件名,在echo $i 语句中并没有影响。
如果你遇到了特定的问题,可以发出来想办法解决。本回答被提问者和网友采纳
第2个回答 2015-06-10
file=aaa\$aaa.txt