如何使用sed删除文件中的所有双引号

时间:2011-10-03 13:42:31

标签: sed

我有一个名为file.txt的文件。它有很多双引号。我想删除所有这些。

我试过了sed 's/"//g' file.txt

我试过了sed -s "s/^\(\(\"\(.*\)\"\)\|\('\(.*\)'\)\)\$/\\3\\5/g" file.txt

两者都没有效果。

如何删除文件中的所有双引号?

6 个答案:

答案 0 :(得分:94)

您只需要在第一个示例中转义引号:

$ sed 's/\"//g' file.txt

答案 1 :(得分:26)

您确定需要使用sed吗?怎么样:

tr -d "\""

答案 2 :(得分:7)

如需更换,您也可以:

sed -i '' 's/\"//g' file.txt

或在Linux中

sed -i 's/\"//g' file.txt

答案 3 :(得分:4)

补充评论。是的,这有效:

    sed 's/\"//g' infile.txt  > outfile.txt

(但批量gnu sed,只会打印到屏幕)

在批处理脚本(GNU SED)中,需要这样做:

    sed 's/\x22//g' infile.txt  > outfile.txt

答案 4 :(得分:2)

尝试在表达式中使用反斜杠前加双引号:

sed 's/\"//g' [file name]

答案 5 :(得分:0)

尝试一下:

sed -i -e 's/\"//g' file.txt