약간 오래된 학교이지만 OS X에서 작동했습니다.
속임수가 거의 없습니다 :
• .sls
현재 디렉토리에서 확장자 를 가진 파일 만 편집합니다
• "임의의 특성"으로 평가되지 않도록 .
탈출해야합니다.sed
• 평소 대신 구분 기호 ,
로 사용됩니다.sed
/
또한 이것은 Jinja 템플릿을 편집 variable
하여 경로에 a를 전달하는 것 입니다 import
(그러나 이것은 주제가 아닙니다).
먼저 sed 명령이 원하는 것을 수행하는지 확인하십시오 (이것은 stdout에 대한 변경 사항 만 인쇄하고 파일은 변경되지 않습니다).
for file in $(find . -name *.sls -type f); do echo -e "\n$file: "; sed 's,foo\.bar,foo/bar/\"+baz+\"/,g' $file; done
변경 준비가되면 필요에 따라 sed 명령을 편집하십시오.
for file in $(find . -name *.sls -type f); do echo -e "\n$file: "; sed -i '' 's,foo\.bar,foo/bar/\"+baz+\"/,g' $file; done
을 참고 -i ''
에 나오지도 내가 (에 설명 된대로 원본 파일의 백업을 생성하고 싶지 않았다, 명령 OS X에 나오지으로 다른 위치에서 편집 이 페이지 또는 로버트 Lujo의 의견에).
행복한 seding 사람들!