如何使用sed删除文件每行的最后双引号

时间:2012-03-01 16:42:22

标签: sed

我正在尝试从文件的每一行中删除最后的双引号。我对sed很新,我认为sed很容易做到这一点,但无法弄清楚正确的语法。有人可以帮忙吗? 谢谢!

2 个答案:

答案 0 :(得分:2)

尝试:

$ sed 's/\(.*\)"/\1/'
aaa"bbb              <-- Input
aaabbb               <-- Output
aaa"bbb"ccc          <-- Input
aaa"bbbccc           <-- Output

答案 1 :(得分:2)

我想你只想删除每一行中最后一次出现的双引号:

看测试:

kent$  cat t.txt
asdf"o"
asdfasdfsadf   ix"    "    000
"as;ldkfj;laskfj;lkasjdf;ljks

kent$  sed -r 's/"([^"]*$)/\1/' t.txt
asdf"o
asdfasdfsadf   ix"        000
as;ldkfj;laskfj;lkasjdf;ljks