ファイルリストに含まれるファイルのパターンを変更するには?

ファイルリストに含まれるファイルのパターンを変更するには?

fileslistファイル名のリスト、またはこれらのファイルの相対パスと、一部の親ディレクトリの名前を含むテキストファイルがあります。の各行には1つのファイルしかありませんfileslist。その親ディレクトリで各ファイルに対して1つずつコマンドを実行したいと思います。このコマンドは、すべてのファイルから特定のパターンを検索し、それを別のパターンに置き換える必要があります。各テキストファイルにはパターンが含まれている場合と含まれない場合がありますCollege Documents。に変更したいですCollege_Documents。どうすればいいですか?

ベストアンサー1

私はxargsそうすることを推薦する:

xargs sed -i 's/College Documents/College_Documents/g' < filelist

filelistこれはxargsに入力を読むように指示します(通常はstdin;ファイルの内容を提供します)。sedたとえば、次のように引数リストをできるだけ多くのファイルで埋めます。

sed -i 's/College Documents/College_Documents/g' file1 file2 file3 ...
sed -i 's/College Documents/College_Documents/g' filen filem fileo ...

おすすめ記事