現在、シェルで小さな実験をしています。
私のコマンドは次のとおりです。
echo 'This a cool butterfly' > test
sed 's/butterfly/parrot/g' test > test
しかし、テストファイルに対して単純なcatを実行すると、ファイルは空です。なぜ?
答え1
同時にファイルを読み書きすることはできません。履歴書では、sedは「test」ファイルを読み込んでいますが、同時にそのファイルに書き込んでいるため、結果は空のファイルです。
この試み:
sed -i 's/butterfly/parrot/g' test
これにより、ファイルはその場所で編集されます。