我想通過bash腳本遍歷包含文件名中某個單詞的目錄中的所有文件。如何使用bash腳本循環遍歷文件名中包含特定單詞的目錄中的文件?
以下腳本遍歷目錄中的所有文件,
cd path/to/directory
for file in *
do
echo $file
done
ls | grep 'my_word'
只給已在文件名中的單詞「my_word」的文件。但是我不確定如何用ls替換*腳本中的grep'my_word'。
如果我不喜歡這個,
for file in ls | grep 'my_word'
do
echo $file
done
它給了我一個錯誤「附近意外的標記'語法錯誤|'」。這樣做的正確方法是什麼?
正確的語法是'在$文件(LS | grep '可以my_word');做',但使用'find'或者glob'仍然是正確的選擇。 – chepner 2012-08-09 11:59:06
是的,謝謝,後來在史蒂夫的回答幫助下計算出來:) – 2012-08-09 13:28:03