복잡한 명령:
git ls-files | grep -E '\.(ts|xml|json|html|js|scss)$' | xargs sed -ie s/##tag##/1.0.0/g
과거에는 올바른 방식으로 작동하고 교체되었습니다.
그래서 파일버전 정보.html:
<p>Version: ##tag##</p>
이제 두 번째 파일이 생성됩니다.
- 버전 정보.html
- 버전 정보.htmle
왜 e
마지막에 추가되었나요?
삭제하면 -ie
내용이 나옵니다. e
에서 삭제하면 -ie
오류가 나타납니다.
귀하의 의견에 미리 감사드립니다!
답변1
프로비저닝이란 filename+ 이라는 백업 파일을 유지하면서 변경 작업을 수행하는 것을 의미합니다 -ie
.sed
e
~에서man sed
-i[SUFFIX], --in-place[=SUFFIX]
edit files in place (makes backup if SUFFIX supplied)
다른 매개변수를 동시에 사용하려면 sed -i
별도로 사용해야 합니다. 아니면 최소한 -i
백업 파일의 접미사로 해석되지 않도록 매개변수 뒤에 매개변수를 넣지 마세요.
sed -i.bak -e ...
.bak
확장자를 접미사로 사용하여 백업 파일을 생성하려면
sed -i -e ...
백업 파일이 생성되지 않기 때문입니다.