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

Учебное пособие по командам развертывания и развертывания с примерами

В этом руководстве мы обсудим две менее известные команды Linux, а именно Expand и Unexpand, с практическими примерами. Для тех, кому интересно: команда «Развернуть» используется для замены символов TAB на символы пробела в файлах, а команда «Развернуть» делает противоположное, то есть заменяет символы ПРОБЕЛ на символы TAB в файле. Фактически, в MS-DOS также есть команда «Развернуть», которая используется для расширения сжатого файла. Но команда Linux Expand просто преобразует табуляции в пробелы. Эти две команды являются частью GNU coreutils и написаны Дэвидом Маккензи.

В демонстрационных целях в этом руководстве я буду использовать текстовый файл с именем «ostechnix.txt».

Развернуть примеры команд

Как уже говорилось, команда «Развернуть» заменяет символы TAB в файле символами ПРОБЕЛ.

Чтобы преобразовать табуляцию в пробелы в файле, например «ostechnix.txt», и записать результат в стандартный вывод с помощью команды:

expand ostechnix.txt

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

expand ostechnix.txt>output.txt

Мы также можем конвертировать табуляции в пробелы, читая из стандартного ввода. Для этого просто запустите команду «развернуть», не упоминая имя исходного файла:

expand

Просто введите текст и нажмите Enter, чтобы преобразовать табуляцию в пробелы. Нажмите CTRL+C, чтобы выйти.

Если вы не хотите конвертировать табуляции после пробелов, используйте флаг -i, как показано ниже.

expand -i ostechnix.txt

Мы также можем использовать табуляцию на расстоянии определенного количества символов, а не 8 (значение по умолчанию):

expand -t=5 ostechnix.txt

Вы даже можете указать несколько позиций табуляции через запятую, как показано ниже.

expand -t 5,10,15 ostechnix.txt

Или,

expand -t "5 10 15" ostechnix.txt

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

man expand

Примеры команд «Развернуть»

Команда Отменить развертывание выполняет действие, противоположное команде «Развернуть». Он преобразует символы ПРОБЕЛ в символы TAB. Позвольте мне показать вам несколько примеров, чтобы научиться использовать команду Unexpand.

Чтобы преобразовать пробелы (конечно, пробелы) в файле в табуляции и записать вывод на стандартный вывод, выполните:

unexpand ostechnix.txt

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

unexpand ostechnix.txt>output.txt

Преобразуйте пробелы в табуляции, читая из стандартного вывода:

unexpand

По умолчанию команда Unexpand преобразует только исходные пробелы. Если вы хотите преобразовать все пробелы, а не только начальные, используйте флаг -a:

unexpand -a ostechnix.txt

Чтобы преобразовать только начальные последовательности пробелов (обратите внимание, что это переопределяет -a):

unexpand --first-only ostechnix.txt

Используйте табуляцию на расстоянии определенного количества символов, а не 8 (включает -a):

unexpand -t 5 ostechnix.txt

Точно так же мы можем указать несколько позиций табуляции через запятую, как показано ниже.

unexpand -t 5,10,15 ostechnix.txt

Или,

unexpand -t "5 10 15" ostechnix.txt

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

man unexpand

Рекомендуем прочитать:

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

При работе с большим количеством файлов команды «Развернуть» и «Развернуть» могут быть очень полезны для замены нежелательных символов TAB символами ПРОБЕЛ и наоборот.

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