Как использовать sed для удаления последней двойной кавычки из каждой строки файла - PullRequest
1 голос
/ 01 марта 2012

Я пытаюсь удалить последнюю двойную кавычку из каждой строки файла.Я очень плохо знаком с sed, и я думаю, что sed может легко это сделать, но не может понять правильный синтаксис.Кто-нибудь может помочь?Спасибо!

Ответы [ 2 ]

2 голосов
/ 01 марта 2012

Полагаю, вы хотите удалить только последнее вхождение двойной кавычки в каждой строке:

см. Тест:

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
2 голосов
/ 01 марта 2012

Попробуйте:

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