gpt4 book ai didi

linux - 如何从 unix 中的文本文件中删除 "^@"?

转载 作者:塔克拉玛干 更新时间:2023-11-03 00:03:32 26 4
gpt4 key购买 nike

我正在尝试使用 Unix 平台从多个文本文件中删除“^@”。我已经找到了 this解决方案,但它不适用于我的情况。我还使用了 sed -i -e 's/^@//g' testfile.txtdos2unix testfile.txt。样本数据放here .

如有任何建议,我们将不胜感激。

最佳答案

您看到的 ^@ 不是文字字符串。它是 NUL(字符值 0)的转义码。如果你想全部删除它们:

tr -d '\0' <test.txt >newfile.txt

为了帮助诊断这类事情,od(八进制转储)实用程序非常方便。我在您链接的测试文件上运行了这个,以确认它们是 NUL:

$ od -c test.txt | head
0000000 \0 A \0 i \0 r \0 Q \0 u \0 a \0 l \0 i
0000020 \0 t \0 y \0 S \0 t \0 a \0 t \0 i \0 o
0000040 \0 n \0 E \0 o \0 I \0 C \0 o \0 d \0 e
0000060 \0 \n \0 D \0 E \0 H \0 E \0 0 \0 4 \0 4
*
0000400 \0 \n \0 D \0 E \0 H \0 E \0 0 \0 4 \0
0000420 4 \0 \n \0 D \0 E \0 H \0 E \0 0 \0 4 \0
*
0422160 4 \0 \n \n
0422164

关于linux - 如何从 unix 中的文本文件中删除 "^@"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53045452/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com