8

我想使用 SED 从文件中删除所有“^A”控制字符。我可以使用 'sed s/[[:cntrl:]]//g' 删除所有控制字符,但如何具体指定“^A”?

4

2 回答 2

11

要重现“^A”,只需按 Ctrl-v Ctrl-a 这将重现文件中的 ^A

sed -i -e 's/^A/BLAH/g' testfile

那一行^A是我按 Ctrl-v Ctrl-a 的结果

于 2013-03-14T22:36:14.880 回答
11

^A 是字节 1\x01左右,你应该能够做到这一点:

sed 's/\x01//g'

请记住,对于单字节更改,“tr”比 sed 快,尽管您必须使用 bash 的$'..'语法给它一个 0x01 字节:

tr -d $'\x01'
于 2013-03-14T22:38:16.843 回答