덤프 파일에서 빈 줄을 제거하는 명령

민토

16 진 덤프 파일에서 빈 줄 을 제거하고 부품을 결합하는 데 더 적합한 명령은 무엇입니까?

sed -i '/^$/d' file.log    
sed -i '/^\s*$/d' file.log

아니면 awk?

801c3fb0: 0000 2821  0c18 9741  2406 0020  afb0 0010 | ..(!...A$.. ....
801c3fc0: 2402 0014  afa2 0038  8e22 00e4  2404 0064 | $......8."..$..d
801c3fd0: 0000 2821  03a0 3021  0040 f809  27a7 0038 | ..(!..0!.@..'..8
801c3fe0: 1040 001d  0040 9021  2630 0008  0200 2021 | .@...@.!&0.... !
801c3ff0: 0c0a 8935  2405 0002  5040 0064  0000 1021 | [email protected]...!


801c4000: 0200 2021  0c0a 8935  2405 0002  0200 2021 | .. !...5$..... !
801c4010: 0040 2821  2406 0002  3c07 8074  0c0a 86a5 | .@(!$...<..t....
801c4020: 24e7 10fc  0040 2021  3c05 8074  0c1b 634c | $....@ !<..t..cL
jesse_b

두 번째 sed솔루션은 거의 모든 경우에 잘 작동하지만 다음과 같은 이유로 다른 솔루션이 있습니다.

file.log:

$ cat file.log
801c3fb0: 0000 2821  0c18 9741  2406 0020  afb0 0010 | ..(!...A$.. ....

Empty line before-801c3fc0: 2402 0014  afa2 0038  8e22 00e4  2404 0064 | $......8."..$..d

Space before-801c3fd0: 0000 2821  03a0 3021  0040 f809  27a7 0038 | ..(!..0!.@..'..8

Tab before-801c3fe0: 1040 001d  0040 9021  2630 0008  0200 2021 | .@...@.!&0.... !

2 행은 완전히 빈 행이고 4 행에는 공백이 있으며 6 행에는 탭이 있습니다.


sed:

sed '/^$/d' file.log

$ sed '/^$/d' file.log
801c3fb0: 0000 2821  0c18 9741  2406 0020  afb0 0010 | ..(!...A$.. ....
Empty line before-801c3fc0: 2402 0014  afa2 0038  8e22 00e4  2404 0064 | $......8."..$..d

Space before-801c3fd0: 0000 2821  03a0 3021  0040 f809  27a7 0038 | ..(!..0!.@..'..8

Tab before-801c3fe0: 1040 001d  0040 9021  2630 0008  0200 2021 | .@...@.!&0.... !

위와 같이 공백이 포함 된 줄은 제거되지 않습니다.

sed '/^\s*$/d' file.log

$ sed '/^\s*$/d' file.log
801c3fb0: 0000 2821  0c18 9741  2406 0020  afb0 0010 | ..(!...A$.. ....
Empty line before-801c3fc0: 2402 0014  afa2 0038  8e22 00e4  2404 0064 | $......8."..$..d
Space before-801c3fd0: 0000 2821  03a0 3021  0040 f809  27a7 0038 | ..(!..0!.@..'..8
Tab before-801c3fe0: 1040 001d  0040 9021  2630 0008  0200 2021 | .@...@.!&0.... !

참고 : 위의 솔루션은 BSD sed에서 작동하지 않는 것 같습니다.

sed '/^[[:space:]]*$/d' file.log

$ sed '/^[[:space:]]*$/d' file.log
801c3fb0: 0000 2821  0c18 9741  2406 0020  afb0 0010 | ..(!...A$.. ....
Empty line before-801c3fc0: 2402 0014  afa2 0038  8e22 00e4  2404 0064 | $......8."..$..d
Space before-801c3fd0: 0000 2821  03a0 3021  0040 f809  27a7 0038 | ..(!..0!.@..'..8
Tab before-801c3fe0: 1040 001d  0040 9021  2630 0008  0200 2021 | .@...@.!&0.... !

이 솔루션은 GNU 및 BSD sed 모두에서 작동합니다.


awk:

awk 'NF' file.log

$ awk 'NF' file.log
801c3fb0: 0000 2821  0c18 9741  2406 0020  afb0 0010 | ..(!...A$.. ....
Empty line before-801c3fc0: 2402 0014  afa2 0038  8e22 00e4  2404 0064 | $......8."..$..d
Space before-801c3fd0: 0000 2821  03a0 3021  0040 f809  27a7 0038 | ..(!..0!.@..'..8
Tab before-801c3fe0: 1040 001d  0040 9021  2630 0008  0200 2021 | .@...@.!&0.... !

이것은 제자리에서 수정되지 않지만 GNU awk가있는 경우 다음을 사용할 수 있습니다.

awk -i inplace 'NF' file.log

grep:

grep -v '^$' file.log

$ grep -v '^$' file.log
801c3fb0: 0000 2821  0c18 9741  2406 0020  afb0 0010 | ..(!...A$.. ....
Empty line before-801c3fc0: 2402 0014  afa2 0038  8e22 00e4  2404 0064 | $......8."..$..d

Space before-801c3fd0: 0000 2821  03a0 3021  0040 f809  27a7 0038 | ..(!..0!.@..'..8

Tab before-801c3fe0: 1040 001d  0040 9021  2630 0008  0200 2021 | .@...@.!&0.... !

위와 같이 공백이 포함 된 줄은 제거되지 않습니다. 또한 이것은 파일을 제자리에서 수정하지 않습니다.

grep . file.log

$ grep . file.log
801c3fb0: 0000 2821  0c18 9741  2406 0020  afb0 0010 | ..(!...A$.. ....
Empty line before-801c3fc0: 2402 0014  afa2 0038  8e22 00e4  2404 0064 | $......8."..$..d

Space before-801c3fd0: 0000 2821  03a0 3021  0040 f809  27a7 0038 | ..(!..0!.@..'..8

Tab before-801c3fe0: 1040 001d  0040 9021  2630 0008  0200 2021 | .@...@.!&0.... !

위와 같이 공백이 포함 된 줄은 제거되지 않습니다. 또한 이것은 파일을 제자리에서 수정하지 않습니다.

grep -v '^\s*$' file.log

$ grep -v '^\s*$' file.log
801c3fb0: 0000 2821  0c18 9741  2406 0020  afb0 0010 | ..(!...A$.. ....
Empty line before-801c3fc0: 2402 0014  afa2 0038  8e22 00e4  2404 0064 | $......8."..$..d
Space before-801c3fd0: 0000 2821  03a0 3021  0040 f809  27a7 0038 | ..(!..0!.@..'..8
Tab before-801c3fe0: 1040 001d  0040 9021  2630 0008  0200 2021 | .@...@.!&0.... !

이것은 파일을 제자리에서 수정하지는 않지만 리디렉션을 사용하여 원하는 내용으로 새 파일을 만들 수 있습니다.


tr:

tr -s '\n' <file.log

$ tr -s '\n' <file.log
801c3fb0: 0000 2821  0c18 9741  2406 0020  afb0 0010 | ..(!...A$.. ....
Empty line before-801c3fc0: 2402 0014  afa2 0038  8e22 00e4  2404 0064 | $......8."..$..d

Space before-801c3fd0: 0000 2821  03a0 3021  0040 f809  27a7 0038 | ..(!..0!.@..'..8

Tab before-801c3fe0: 1040 001d  0040 9021  2630 0008  0200 2021 | .@...@.!&0.... !

위와 같이 공백이 포함 된 줄은 제거되지 않습니다. 또한 이것은 파일을 제자리에서 수정하지 않습니다.


perl:

perl -n -e "print if /\S/" file.log

$ perl -n -e "print if /\S/" file.log
801c3fb0: 0000 2821  0c18 9741  2406 0020  afb0 0010 | ..(!...A$.. ....
Empty line before-801c3fc0: 2402 0014  afa2 0038  8e22 00e4  2404 0064 | $......8."..$..d
Space before-801c3fd0: 0000 2821  03a0 3021  0040 f809  27a7 0038 | ..(!..0!.@..'..8
Tab before-801c3fe0: 1040 001d  0040 9021  2630 0008  0200 2021 | .@...@.!&0.... !

제자리에서 수정하려면 다음을 사용하십시오.

perl -i.bak -n -e "print if /\S/" file.log

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

덤프 파일에서 빈 줄을 제거하는 명령

분류에서Dev

명령 줄에서 빈 파일을 만드는 방법

분류에서Dev

명령 결과 끝에서 빈 줄을 이스케이프하는 방법

분류에서Dev

로봇 프레임 워크의 파일에서 빈 줄을 제거하는 방법

분류에서Dev

빈 명령 줄에서 PHP

분류에서Dev

봄 명령 줄에서 활성 프로파일을 무시하지

분류에서Dev

Cat 명령이 구성 파일을 덤프하지 않습니다.

분류에서Dev

X를 포함하는 행 다음에 파일의 다음 N 행을 덤프하는 터미널 명령?

분류에서Dev

Windows 7에서 크래시 덤프 파일을 제거하는 방법

분류에서Dev

빈 줄에서 파일을 제거하다

분류에서Dev

Visual Studio 덤프 분석 : 소스 제어에서 소스 코드를 검색하는 명령을 찾는 방법

분류에서Dev

파일에서 빈 줄 / 행을 제거하는 방법은 무엇입니까?

분류에서Dev

파일에서 빈 줄을 제거하는 방법 (탭 및 공백 포함)?

분류에서Dev

vi에서 @로 나타나는 파일에서 빈 / 빈 줄을 제거하는 방법

분류에서Dev

명령 줄을 통해 gitlab 프로젝트 "업로드"에서 파일을 다운로드하는 방법

분류에서Dev

잘못된 명령어 (코어 덤프 됨)-로컬에서 작동하는 실행 파일을 사용하는 경우

분류에서Dev

명령 줄에서 Visual Studio 프로젝트에 소스 파일을 추가하는 방법이 있습니까?

분류에서Dev

명령 줄에서 파일 제로화

분류에서Dev

파일에서 특정 줄을 복사하는 bash 명령

분류에서Dev

명령 줄에서 .c 파일을 실행하는 방법

분류에서Dev

파이프 또는 명령 줄 인수에서 파일 이름을 읽는 Bash 스크립트?

분류에서Dev

데이터 프레임 행에서 빈 셀을 현명하게 제거하는 방법

분류에서Dev

파일 끝에서 빈 새 줄 제거

분류에서Dev

csv 파일에서 "빈"줄을 삭제하는 Perl

분류에서Dev

명령 줄에서 기존 emacs 프로세스에서 파일을 여는 방법은 무엇입니까?

분류에서Dev

명령 줄 파이프 출력에서 파일을 작성 하시겠습니까?

분류에서Dev

명령 프롬프트없이 파일에서 "시스템 파일"특성을 제거하는 방법은 무엇입니까?

분류에서Dev

명령 프롬프트없이 파일에서 "시스템 파일"특성을 제거하는 방법은 무엇입니까?

분류에서Dev

자바 컴파일 및 명령 줄에서이 개 클래스를 포함하는 프로그램을 실행

Related 관련 기사

  1. 1

    덤프 파일에서 빈 줄을 제거하는 명령

  2. 2

    명령 줄에서 빈 파일을 만드는 방법

  3. 3

    명령 결과 끝에서 빈 줄을 이스케이프하는 방법

  4. 4

    로봇 프레임 워크의 파일에서 빈 줄을 제거하는 방법

  5. 5

    빈 명령 줄에서 PHP

  6. 6

    봄 명령 줄에서 활성 프로파일을 무시하지

  7. 7

    Cat 명령이 구성 파일을 덤프하지 않습니다.

  8. 8

    X를 포함하는 행 다음에 파일의 다음 N 행을 덤프하는 터미널 명령?

  9. 9

    Windows 7에서 크래시 덤프 파일을 제거하는 방법

  10. 10

    빈 줄에서 파일을 제거하다

  11. 11

    Visual Studio 덤프 분석 : 소스 제어에서 소스 코드를 검색하는 명령을 찾는 방법

  12. 12

    파일에서 빈 줄 / 행을 제거하는 방법은 무엇입니까?

  13. 13

    파일에서 빈 줄을 제거하는 방법 (탭 및 공백 포함)?

  14. 14

    vi에서 @로 나타나는 파일에서 빈 / 빈 줄을 제거하는 방법

  15. 15

    명령 줄을 통해 gitlab 프로젝트 "업로드"에서 파일을 다운로드하는 방법

  16. 16

    잘못된 명령어 (코어 덤프 됨)-로컬에서 작동하는 실행 파일을 사용하는 경우

  17. 17

    명령 줄에서 Visual Studio 프로젝트에 소스 파일을 추가하는 방법이 있습니까?

  18. 18

    명령 줄에서 파일 제로화

  19. 19

    파일에서 특정 줄을 복사하는 bash 명령

  20. 20

    명령 줄에서 .c 파일을 실행하는 방법

  21. 21

    파이프 또는 명령 줄 인수에서 파일 이름을 읽는 Bash 스크립트?

  22. 22

    데이터 프레임 행에서 빈 셀을 현명하게 제거하는 방법

  23. 23

    파일 끝에서 빈 새 줄 제거

  24. 24

    csv 파일에서 "빈"줄을 삭제하는 Perl

  25. 25

    명령 줄에서 기존 emacs 프로세스에서 파일을 여는 방법은 무엇입니까?

  26. 26

    명령 줄 파이프 출력에서 파일을 작성 하시겠습니까?

  27. 27

    명령 프롬프트없이 파일에서 "시스템 파일"특성을 제거하는 방법은 무엇입니까?

  28. 28

    명령 프롬프트없이 파일에서 "시스템 파일"특성을 제거하는 방법은 무엇입니까?

  29. 29

    자바 컴파일 및 명령 줄에서이 개 클래스를 포함하는 프로그램을 실행

뜨겁다태그

보관