sed에서 널 바이트(␀, NUL, \0)를 감지하는 방법이 있습니까?

sed에서 널 바이트(␀, NUL, \0)를 감지하는 방법이 있습니까?

와 연관되다다른 질문, 바이너리 파일을 모호하게 감지하기 위해 ?에서 ␀바이트를 감지하는 방법이 있습니까 sed?

답변1

예:

NUL 바이트와 개행문자를 보낸다는 것을 증명하세요:

$ echo -e \\0 | hexdump -C
00000000  00 0a                                             |..|
00000002

이제 NUL 바이트를 느낌표로 변경합니다 !.

$ echo -e \\0 | sed 's/\x00/!/' | hexdump -C
00000000  21 0a                                             |!.|

따라서 트릭은 \x00NUL 바이트로 사용됩니다.

답변2

예, 패턴은 \x00널 바이트와 일치합니다.

예:

$ printf "\0\n\0\n" > file
$ sed -e 's/\x00/test/' -i file
$ cat file
test
test
$  

관련 정보