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
「予期しないトークン `|' に近い構文エラー」というエラーが表示されます。これを行う正しい方法は何ですか?