Я посылаю одну строку вывода (из некоторых кластерных заданий) в файл. Выходные данные имеют определенное количество столбцов, но я забыл добавить разрыв строки в конце каждой строки, поэтому все мои входные данные объединяются в одну длинную строку в выходном файле.

Как можно обернуть вывод в заданное количество столбцов?

например, у меня есть:

Alice   1   2   3   Barry   4   5   6   Charlie 7   8   9

Мне бы хотелось:

Alice   1   2   3
Barry   4   5   6
Charlie 7   8   9

Насколько я могу судить, awk работает со строками и не может работать с текущим номером поля в записи, а fold работает с фиксированной шириной столбца. Можно предположить, что между каждым полем есть один разделитель, который всегда одинаков (\t).

1 ответ1

0

Допустим, имя файла - xyz.txt. Тогда вы можете попробовать это:

sed -i -e '$ a\' xyz.txt

или же

echo Good\\nline2Morning, тогда результат будет:

Хорошо

утро

или же

echo " date Пользователь whoami запустил скрипт." $ '\r' >> xyz.txt

Здесь $ '\r' в конце - это дополнительный возврат каретки; это, плюс конец строки Unix, приведет к окончанию строки Windows.

Пожалуйста, дайте мне знать, если я правильно понимаю ваш вопрос.

Пожалуйста, обратитесь к этому.

Спасибо.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .