Я искал высоко и низко и надеюсь, что вы можете мне помочь. Мне нужно найти каждую строку в файле, которая НЕ начинается с двойной кавычки (""), и добавить эту строку к предыдущей строке.
Я успешно сделал это, используя следующую команду:
кот имя_файла.csv | sed -e :a -e '$!Ns/\n[^"]//;ta -e 'P;D' > newfilename.csv
Моя проблема в замене. Как и следовало ожидать, после добавления строки к предыдущей строке первый символ удаляется. Мне нужно, чтобы его не удаляли. Я попробовал cat filname.csv | sed -e :a -e '$!Ns/\n[^"]/&/;ta -e 'P;D' > newfilename.csv
но он просто висит. Я думал, что амперсанд (&) скопирует совпадающую строку.
Вход:
"line 1
<line 2>
Вывод с существующей или первой командой sed: lineline2>
** Обратите внимание на удаление ‹
Мне нужно, чтобы вывод был line1<line2>
Любая помощь, которую вы можете предоставить, будет ОЧЕНЬ оценена!!