일부 변경을 원하는 bash 파일이 있습니다.
sed -i 's/ / /g' testfile
sed -i -e 's/#[a-z]$//' -e '/^$/d' testfile
sed -i 's/ *$//' testfile
sed '/##=/ r header' testfile
첫 번째 명령에서 TAB을 공백으로 바꾼 다음 주석(##으로 시작하는 주석도 포함)과 빈 줄을 제거하고 싶습니다. 나중에 내 파일에 지정된 패턴 뒤에 파일을 삽입하고 싶습니다. 명령 순서에 문제가 있나요?
답변1
하나의 sed에 여러 지침을 제공할 수 있습니다. 예를 들면 다음과 같습니다.
sed 's/\t/ /g;/^ *$/d;s/^#/NODIESE/' testfile
이 줄
- 탭을 공백으로 바꾸기
- 빈 내용(또는 빈 줄)으로 시작하는 줄을 제거하세요.
- 처음에 Dash를 NODIESE로 교체하세요.
따라서 테스트 파일은 한 번만 처리되고 sed는 한 번만 시작됩니다.