필자는 markdown으로 변환 할 일련의 텍스트 파일을 보유하고 있습니다. 선행 공백을 제거하고 모든 파일의 첫 번째 줄에 해시 기호를 추가하려고합니다. 내가 이것을 실행하면 :SED를 사용하여 여러 파일에서 n 번째 줄을 어떻게 변경합니까?
sed -i.bak '1s/ *\(.*\)/\#\1/g' *.md
첫 번째 파일의 첫 번째 줄을 변경하고 나머지 파일을 변경하지 않고 모두 처리합니다.
무엇이 누락되어 여러 파일의 n 번째 줄에서 무언가를 검색하고 바꿀 수 있습니까? OSX 10.7
시스템의'sed '버전은 무엇입니까? 그것은 우분투 12.04에서 잘 작동합니다. – kev
@kev 그렇습니다. 그러나 실제로는 문서화 된 동작과 반대되는데, 이것은 개별 파일을 별도의 스트림으로 처리하기 위해'-s' 플래그가 필요하다는 것을 나타냅니다. 즉, OS X은 GNU 도구를 사용하지 않으므로 쉘 루핑 방식을 사용해야 할 것입니다. –