課題の著作権ヘッダーを変更しようとしています。次のコマンドを使用して、著作権ヘッダーを持つすべてのファイルを一覧表示できました。
grep -rni copyright *
上記のコマンドで、約1000個のファイルを取得しました。
一度にすべてのファイルを変更する方法を教えてください。
これにより、「著作権」という単語が含まれるファイルにテキストの変更が適用されます (大文字と小文字は区別されません)。
for filename in *; do
if grep -qi "copyright" "$filename"; then
sed -i'' -e 's/old text/new text/' "$filename"
fi
done
これは現在のディレクトリでのみ機能することに注意してください。サブディレクトリ内のファイルを処理するには、おそらくfind
コマンドを使用する必要があります。
変更したいテキストを説明していただければ、目標を達成するためのより正確な方法を提案できる場合があります。
grep -ril copyright * | xargs sed -i 's/old text/new text/'