我有一个名为file.txt的文件。它有很多双引号。我想删除所有这些。
我试过了sed 's/"//g' file.txt
我试过了sed -s "s/^\(\(\"\(.*\)\"\)\|\('\(.*\)'\)\)\$/\\3\\5/g" file.txt
两者都没有效果。
如何删除文件中的所有双引号?
答案 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