Unix for ループは機能しません。

Unix for ループは機能しません。

単純なbashスクリプトがあります。過フッ化フィードバック:

CWD=/cygdrive/c/Users/abhisek.samanta/Desktop/New_folder
cd $CWD
for i in `cat req_files.txt`
do
echo "file_found : $i">a.txt
done

注:req_files.txtには、このディレクトリで見つける必要があるファイルのリストがあります。ファイルが見つかったら、見つかったファイルの名前をリストし、「a.txt」として印刷する必要があります。

req_files.txtには複数のファイルがありますが、最初のファイル名のみが印刷され、残りは印刷されません。助けてください。

ベストアンサー1

繰り返すたびにa.txtの内容を上書きするようです。

echo "file_found : $i">a.txt

>と交換する必要があります>>

または、毎回開いたり閉じたりすることがないように、作業が終わったら配置します。これを他の回答に追加して提供してください。

done < req_files.txt > a.txt

今まで表示されている内容を保存する必要はないので、追加する代わりに開いたままにしておきました。

おすすめ記事