sed를 사용하여 첫 번째 줄을 바꾸는 방법은 무엇입니까?

sed를 사용하여 첫 번째 줄을 바꾸는 방법은 무엇입니까?

안녕하세요, 아래 언급된 대로 sed 명령을 사용하여 파일의 헤더 줄을 바꾸려고 합니다.

sed "1s/.*/$new_header/" Test_file.csv 

위 줄은 헤더를 대체하고 이를 표준 출력으로 인쇄합니다. 그런데 출력을 새 파일로 리디렉션하거나 파일을 직접 바꾸려면 어떻게 해야 합니까?

sed "1s/.*/$new_header/" Test_file.csv > new_file.csv 

위 명령은 제대로 작동하지만 동일한 파일로 리디렉션하고 싶습니다.

답변1

-i플래그를 사용하여 sed제자리에서 편집하고 백업할 수 있습니다.

sed -i.bak "1 s/.*/$new_header/" inputfile

-i옵션은 비표준이며 다른 에서 사용할 수 있습니다 sed.sed -i(제자리에서 편집)를 사용하여 이식성을 달성하는 방법은 무엇입니까?

관련 정보