У меня есть файл, который раньше содержал два столбца CSV, но из него были удалены запятые, так что каждая строка представляет собой одну полную «запись». Мне нужно снова разделить их на две записи, добавив запятую, но строки содержат от 20 до 21 символа и должны обрабатываться соответствующим образом: если строка состоит из 20 символов, запятую необходимо добавить в 16-й позиции, а если строка состоит из 21 символа, запятую необходимо поставить на 17-й позиции. Если бы я правильно выполнил математические расчеты, во втором столбце было бы по 5 символов во всех строках.
Как лучше всего это сделать с помощью инструментов Bash и GNU?
что ты уже испробовал?
С СЭД:
sed -E 's/.{5}$/,&/' file
рассмотрите обзор как создать минимальный воспроизводимый пример затем вернитесь и обновите вопрос; в частности, покажите образцы тестовых данных (строка, которую не нужно менять, строки, которые нужно изменить (1x20char, 1x21char), код, который вы пробовали, (неправильный) вывод, сгенерированный вашим кодом, и (правильный) ожидаемый результат. результат