
В настоящее время провожу небольшой эксперимент в оболочке.
Мои команды следующие:
echo 'This a cool butterfly' > test
sed 's/butterfly/parrot/g' test > test
Но когда я делаю простую кошку в своем тестовом файле, файл оказывается пустым. Почему?
решение1
Вы не можете читать и писать в файл одновременно. В резюме sed читает ваш файл 'test', но вы пишете в этот файл в то же время, поэтому результатом является пустой файл.
Попробуй это:
sed -i 's/butterfly/parrot/g' test
При этом файл будет отредактирован на месте.