我有一个以“xx
”开头的文件,我想找到它并在其上执行一些bash命令。
为了找到它,我写了下一个命令:
b= 'echo $(ls -r /var/www/xx*)'
但是它说No such file or directory
,而xxbr7.log
就在那里。
我怎么能找到它?
答案 0 :(得分:2)
因为在=
之后有一个空格所以它将整个'echo $(ls -r /var/www/xx*)'
字符串解释为执行命令(变量b
在其环境中设置为空字符串。 )
如果您尝试将b
设置为字符串echo /var/www/xxbr7.log
,那么您需要:
b='echo $(ls -r /var/www/xx*)'
=
字符后没有空格。
如果您尝试将其设置为字符串/var/www/xxbr7.log
,那么您可以简化它:
b=$(ls -r /var/www/xx*)
或者对于只有一个文件执行$(ls -r /var/www/xx*)
的特殊情况是不必要的,您可以说/var/www/xx*
b=/var/www/xx*
答案 1 :(得分:2)
您可以使用命令:
find . -name 'mystring*'
找到。