[英]Find folders in a directory, then list them as options in bash script
[英]Linux bash: find folders containing specific text
我昨天學習了如何使用腳本,該腳本將顯示包含輸入文本的所有文件。
echo "enter serial number"
read number
matchfiles=(`find /home/data_files -maxdepth 1 -name "*$number*" -type f -exec basename {} \;`)
COUNTER=${#matchfiles[@]}
echo serial number data folder found:
until [ $COUNTER -lt 0 ]; do
echo ${matchfiles[$COUNTER]}
let COUNTER-=1
done
如果輸入數字12,它將輸出文件名中包含數字12的所有文件。
例如:
enter serial number
12
file12.fee
12file.foo
file.12
我正在尋找一種方法來做完全相同的事情,但使用目錄
所以輸出將是
enter serial number
12
folder12
12folder
我需要包含在數組中的文件夾名稱,以便以后可用於在其中處理數據。
find {path} -name "*$number*" -type d -exec readlink -f {} \;
如果您的可選{path}是相對的,則您希望readlink -f
將相對路徑轉換為絕對路徑。 如果要限制目錄路徑中的遞歸搜索,則可能需要添加回-maxdepth
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.