如何转换^I字符

如何转换^I字符

我有一个像这样的文本文件:

info  Some info here

当我使用 cat -A 时显示:

info^I Some info here

我该如何编辑它,这样我就会得到类似这样的东西:

info<space>-<space>Some info here

答案1

sed 's/\t/ -/' inputfile

如果该模式在一行中多次出现,请使用全局选项:

sed 's/\t/ -/g' inputfile

如果您想将其限制为某些行,例如以“info”开头的行:

sed '/^info/ s/\t/ -/' inputfile

您可以使用该-i选项就地编辑文件:

sed -i 's/\t/ -/' inputfile

如果你不这样做,你可以做这个等效的操作

sed 's/\t/ -/' inputfile > outputfile && mv outputfile inputfile

相关内容