用sed替换引号会导致^ @

时间:2014-12-09 22:07:54

标签: linux sed special-characters vi double-quotes

我正在尝试替换文件中值的双引号 以下

----"7001732469"|"LAWRENCE CITY CAREER TECH CTR"|

我尝试使用此sed "s/\"//g"甚至从文件tr -d '"'中删除它们 - 所有这些工作正常,但问题是当我打开重定向(通过vi)时,它没有引号(好的和好的),但它有^@^E等字符。

无论我对Sed做什么,它都会变成这个,我现在发现很难摆脱它。

对于它为什么会发生以及如何避免它的任何想法都会非常感激。

1 个答案:

答案 0 :(得分:3)

^ @是null,^ E是传输控制字符。你的sed命令对我来说很合适:

$ sed "s/\"//g" file1 > file2

其他一切必须继续。这些控制字符是否可能存在于原始文件中?确切地说,控制字符出现在哪里(可能是一个线索)?

http://ascii-table.com/control-chars.php