<分区>
我有这个字符串并显示特殊字符然后替换
0|A0140017511|1|DEMÁS TEMAS|�|�|2014-08-01
我要这个
0|A0140017511|1|DEMÁS TEMAS|@|@|2014-08-01
$ xxd -p file.txt
307c41303134303031373531317c317c44454dc381532054454d41537c00
7c007c323031342d30382d3031
<分区>
我有这个字符串并显示特殊字符然后替换
0|A0140017511|1|DEMÁS TEMAS|�|�|2014-08-01
我要这个
0|A0140017511|1|DEMÁS TEMAS|@|@|2014-08-01
$ xxd -p file.txt
307c41303134303031373531317c317c44454dc381532054454d41537c00
7c007c323031342d30382d3031
最佳答案
从 xxd
的输出我可以看出您正在尝试用其他东西替换 NUL
。要用单个字符替换它们,例如 -
,请使用 tr
:
$ tr '\0' '-' < file
0|A0140017511|1|DEMÁS TEMAS|-|-|2014-08-01
或者如果你有 GNU sed,你也可以使用字符串:
$ sed 's/\x0/^@/g' file
0|A0140017511|1|DEMÁS TEMAS|^@|^@|2014-08-01
关于linux - 如何在 UNIX 中替换空字符?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55853852/