linux - 十六进制查找 20 并在 LInux 中替换为 00

标签 linux sed hex tr

我有一个非常大的文件(21G),我想做一个查找/替换十六进制(查找 20 并替换为 00)。我正在使用 tr < filename* -d '\000' > newfilename 显然,这只是删除NULL。任何帮助都会很棒。

最佳答案

尝试:

 $ sed 's/\x20/\x00/g' file > newfile

甚至

   $ sed -i 's/\x20/\x00/g' file

如果您不想复制文件而只想替换源文件中的值

关于linux - 十六进制查找 20 并在 LInux 中替换为 00,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33309910/

相关文章:

linux - 跳过标题将文件中的多行合并为单行

c - 使用多线程时如何检测数据丢失的位置

linux - 未找到 EMCC - 仅在 emsdk 中有效,在终端中不全局

regex - 为什么 sed/^$/d 只删除空行而/^$/p 打印所有行?

bash - 从 mysqldump 输出中删除特定表的插入数据(sed?)

C - 使用按位运算符将 int 显示为十六进制

c++ - 如何将 32 个字符的二进制字符串转换为十六进制?

c++ - 红皮书毛皮示例不渲染毛皮 (Linux/nvidia gtx675mx)

linux - opkg-cl update 2 下载错误

php - 我可以在 Perl 或 PHP 中生成 SHA1 吗?