有沒有辦法在 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
$  

相關內容