我想在目錄結構中遞歸搜索特定文件類型的文件。但我需要從外部文件傳遞文件類型。輸出應該列出,每行是文件的絕對路徑。我將使用輸出進行進一步處理。 哪裏是文件類型列表中的外部文件看起來例如像這樣(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
爲什麼沒有「查找」命令過程中正確的變量?