Вам не нужно передавать sed
в sed
, вы можете сделать все это за один шаг:
echo '"abc def ghi " klm "ghi ";' | sed 's/\"/\\"/g; s/^\\"\(.*\)\\"/\"\1\"/'
Некоторые версии sed
предпочитают это так:
echo '"abc def ghi " klm "ghi ";' | sed -e 's/\"/\\"/g' -e 's/^\\"\(.*\)\\"/\"\1\"/'
Я использовал группу захвата, но вместо этого вы могли бы использовать чередование.