![ed에서 배치되지 않은 두 개의 중복 행을 삭제하는 방법이 있습니까?](https://linux55.com/image/193477/ed%EC%97%90%EC%84%9C%20%EB%B0%B0%EC%B9%98%EB%90%98%EC%A7%80%20%EC%95%8A%EC%9D%80%20%EB%91%90%20%EA%B0%9C%EC%9D%98%20%EC%A4%91%EB%B3%B5%20%ED%96%89%EC%9D%84%20%EC%82%AD%EC%A0%9C%ED%95%98%EB%8A%94%20%EB%B0%A9%EB%B2%95%EC%9D%B4%20%EC%9E%88%EC%8A%B5%EB%8B%88%EA%B9%8C%3F.png)
예를 들어 ed에서 배치되지 않은 중복 행을 제거하는 방법을 찾고 있습니다.
ed is a terminal editor
sam is a bitmap editor
emacs is a macro editor
ed is a terminal editor
나는 다음을 생산할 수 있기를 원합니다:
ed is a terminal editor
sam is a bitmap editor
emacs is a macro editor
답변1
이것은또 다른 경우외부 도구를 호출하여 작업을 수행한 다음 도구의 출력을 편집하는 것이 더 쉽습니다.
$ed 파일 95 ,N 1 ed는 터미널 편집기입니다. 2 sam은 비트맵 편집기입니다 3 emacs는 매크로 편집기입니다 4 ed는 터미널 편집기입니다. e !awk '!seen[$0]++' % awk '!seen[$0]++' 파일 71 ,N 1 ed는 터미널 편집기입니다. 2 sam은 비트맵 편집기입니다 3 emacs는 매크로 편집기입니다
awk
여기서 호출되는 명령은 e !
이전에 본 적이 없는 라인을 출력하고, 이미 본 라인은 무시합니다. awk
이 사이트의 많은 답변에서 이러한 특정 사용법의 예를 찾을 수 있습니다 (예:여기, 설명과 함께여기).