Как изменить разделенный файл с уникальным разделителем

sed 's/$/uniqueString/' file.old | sed 's/,/\n/g' | sed ':loop;/^\"[^\"]*$/N;s/\n/,/;/[^\"]$/t loop' | sed ':loop;N;s/\n/@/g;/uniqueString$/!b loop;s/uniqueString$//' > file.new


Эта команда использует sed для изменения разделенного файла с уникальным разделителем. Она выполняет следующие действия:

1. sed 's/$/uniqueString/' file.old: Добавляет «uniqueString» в конец каждой строки файла file.old.

2. sed 's/,/\n/g': Заменяет все запятые на новую строку, преобразуя файл в столбцы.

3. sed ':loop;/^\"[^\"]*$/N;s/\n/,/;/[^\"]$/t loop': Обрабатывает строки внутри двойных кавычек, заменяя новую строку на запятую, чтобы вернуть исходный формат.

4. sed ':loop;N;s/\n/@/g;/uniqueString$/!b loop;s/uniqueString$//': Заменяет новую строку на символ ‘@’, восстанавливает «uniqueString», и удаляет его.

5. > file.new: Результат выводится в файл file.new.

Эта команда полезна для обработки разделенных файлов с уникальными разделителями, восстанавливая исходный формат данных. Альтернативой может быть использование скрипта на Python или других языках программирования для более сложных манипуляций с данными.

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *