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