Поиск по сайту:

Учебное пособие по команде Fold с примерами для начинающих

Вы когда-нибудь оказывались в ситуации, когда вам нужно свернуть или разбить вывод команды, чтобы он соответствовал определенной ширине? Я несколько раз попадал в такую ситуацию при запуске виртуальных машин, особенно серверов без графического интерфейса. На всякий случай, если вы когда-нибудь захотите ограничить вывод команды определенной шириной, не ищите никуда! Просто используйте команду fold! Командаfold оборачивает каждую строку во входном файле так, чтобы она соответствовала указанной ширине, и выводит ее на стандартный вывод.

В этом кратком уроке мы рассмотрим использование команды сгиба на практических примерах.

Учебное пособие по команде Fold с примерами

Команда Fold является частью пакета GNU coreutils, поэтому не будем беспокоиться об установке.

Типичный синтаксис команды сгиба:

fold [OPTION]... [FILE]...

Позвольте мне показать вам несколько примеров, чтобы вы могли лучше понять команду сгиба. У меня есть файл с именем linux.txt, содержащий несколько случайных строк.

Чтобы обернуть каждую строку в приведенном выше файле шириной по умолчанию, запустите:

fold linux.txt

80 столбцов в строке — ширина по умолчанию. Вот вывод вышеуказанной команды:

Как вы можете видеть в приведенном выше выводе, команда сгиба ограничила ширину вывода до 80 символов.

Конечно, вы можете указать предпочтительную ширину, например 50, как показано ниже:

fold -w50 linux.txt

Пример вывода будет:

Вместо того, чтобы просто отображать выходные данные, мы также можем записать выходные данные в новый файл, как показано ниже:

fold -w50 linux.txt > linux1.txt

Приведенная выше команда переносит строки linux.txt на ширину 50 символов и записывает выходные данные в новый файл с именем linux1.txt.

Проверим содержимое нового файла:

cat linux1.txt

Вы внимательно заметили вывод предыдущих команд? Некоторые слова разбиваются между строками. Чтобы решить эту проблему, мы можем использовать флаг '-s', чтобы разбивать строки на пробелы.

Следующая команда переносит каждую строку в заданном файле на ширину «50» и разбивает строку на пробелы:

fold -w50 -s linux.txt

Пример вывода:

Видеть? Теперь результат более чем ясен. Эта команда помещает каждое слово, разделенное пробелом, на новую строку, а слова длиной > 50 переносятся.

Во всех приведенных выше примерах мы ограничивали ширину вывода столбцами. Однако мы можем обеспечить ширину вывода равным количеству байтов, указанному с помощью параметра -b. Следующая команда разбивает вывод на 20 байт.

fold -b20 linux.txt

Пример вывода:

Читайте также:

  • Учебное пособие по командам Uniq с примерами для начинающих

Более подробную информацию можно найти на страницах руководства.

man fold

Статьи по данной тематике