我想在目录结构中递归搜索特定文件类型的文件。但我需要从外部文件传递文件类型。输出应该列出,每行是文件的绝对路径。我将使用输出进行进一步处理。 哪里是文件类型列表中的外部文件看起来例如像这样(filter.lst):Bash脚本搜索在外部文件中使用find命令在目录中递归定义的文件(文件类型)
*.properties
我已经试过这(searchfiles.sh):
while read line
do
echo "$(find $1 -type f -name $line)"
done < $2
echo命令里面该脚本仅用于测试目的。我运行脚本:
./searchfiles.sh test_scripting filter.lst
find命令的echo输出为空。为什么?我试图改变脚本通过以下方式来测试指令是否正确建立了文件的* .properties存在:
while read line
do
echo "find $1 -type f -name $line"
echo "$(find $1 -type f -name $line)"
done < $2
我有输出:
./searchfiles.sh test_scripting filter.lst
find test_scripting -type f -name *.properties
如果我复制manualy “找到test_scripting型的F -name的* .properties”并粘贴到shell文件被正确地发现:
find test_scripting -type f -name *.properties
test_scripting/dir1/audit.properties
test_scripting/audit.properties
test_scripting/dir2/audit.properties
为什么没有“查找”命令过程中正确的变量?