파일 시작 부분에 줄을 추가해야 합니다. 문제의 라인은
\def\submit{}
제가 사용하는 반작업 솔루션이 있습니다 sed
. 모르겠지만 sed
온라인 어딘가에서 얻었지만 줄 시작 부분에 원하지 않는 공백을 삽입하기 때문에 작동하지 않습니다. 별로 상관은 없지만 제대로 하는 게 좋을 것 같아요.
sed -i '1i\ \\\def\\\submit{}' 'dirname/filename'
내가 읽은 바에 따르면 쉘을 탈출하려면 추가 백슬래시가 모두 필요한 것 같습니다. 다른 솔루션도 환영하지만 가능하다면 상대적으로 컴팩트한 라이너를 원합니다. 감사해요.
이 문제,Linux에서 터미널을 통해 sed를 사용하여 파일 시작 부분에 텍스트 삽입비슷하지만 내 표현을 디버깅하는 데 도움이 되지 않습니다.
편집: 이전 접근 방식의 문제점을 설명하기 때문에 @Jonathan의 답변을 수락했습니다. 그러나 답변도 추가했습니다.
ベストアンサー1
sed
스트림 편집에 사용됩니다. 파일은 스트림이 아닙니다. ed
또는 와 같이 이러한 목적으로 설계된 프로그램을 사용하십시오 ex
. 이 -i
옵션은 sed
이식할 수 없을 뿐만 아니라 실제로 파일을 삭제하고 다시 생성하므로 파일에 대한 모든 심볼릭 링크도 끊어집니다. 이는 의미가 없습니다.
ed -s [file] << EOF
0a
\\def\\submit{}
.
w
EOF