현재 쉘에서 작은 실험을 하고 있습니다.
내 명령은 다음과 같습니다.
echo 'This a cool butterfly' > test
sed 's/butterfly/parrot/g' test > test
하지만 테스트 파일에 대해 간단한 cat을 수행하면 파일이 비어 있습니다. 왜?
답변1
동시에 파일을 읽고 쓸 수는 없습니다. 이력서에서 sed는 "test" 파일을 읽고 있지만 동시에 해당 파일에 쓰고 있으므로 결과는 빈 파일입니다.
이 시도:
sed -i 's/butterfly/parrot/g' test
이렇게 하면 파일이 그 자리에서 편집됩니다.