2012-10-10 57 views
0

我想把变量的查找命令的结果 - 我有一个变量里面的命令替换块的问题。波纹管短例:如何在变量中使用双引号来执行反引号?

#!/bin/bash 

pattern='"file*"' 
res=$(find . -maxdepth 1 -type f -name ${pattern}) # doesn't work 
#res=$(find . -maxdepth 1 -type f -name "file*") # works 
echo $res 

怎么了?

回答

0

尝试

pattern="file*" 
res=$(find . -maxdepth 1 -type f -name "${pattern}") 
+0

这等于 “中找到。-maxdepth 1型的F -name文件*” 时,有几个文件以这样的名称掩盖它不会起作用。例如“file1”和“file2”。 –

+0

它现在会工作 – January

+0

谢谢!有用。 –