Команды Linux · 2 min read · Sep 17, 2025
Команда paste в Linux: объяснение для начинающих (5 примеров)
Иногда, работая в командной строке Linux, может возникнуть ситуация, когда вам нужно объединить строки нескольких файлов, чтобы создать более значимые/полезные данные. Вам будет приятно узнать, что существует утилита командной строки paste, которая делает это за вас. В этом руководстве мы обсудим основы этой команды, а также основные функции, которые она предлагает, с помощью простых для понимания примеров.
Но прежде чем мы это сделаем, стоит упомянуть, что все примеры, упомянутые в этой статье, были протестированы на Ubuntu 16.04 LTS.
Команда paste в Linux
Как уже упоминалось выше, команда paste объединяет строки файлов. Вот синтаксис инструмента:
paste [OPTION]... [FILE]...А вот как объясняет это изображение команды paste:
Записывает строки, состоящие из последовательно соответствующих строк из каждого FILE, разделенных TAB,
в стандартный вывод. Без FILE или когда FILE - , считывает стандартный ввод.Следующие примеры в формате вопросов и ответов должны дать вам лучшее представление о том, как работает paste.
Вопрос 1. Как объединить строки нескольких файлов с помощью команды paste?
Предположим, у нас есть три файла - file1.txt, file2.txt и file3.txt - со следующим содержимым:

И задача состоит в том, чтобы объединить строки этих файлов так, чтобы каждая строка конечного вывода содержала индекс, страну и континент, тогда вы можете сделать это с помощью paste следующим образом:
paste file1.txt file2.txt file3.txtВопрос 2. Как применить разделители при использовании paste?
Иногда может возникнуть необходимость добавить разделяющий символ между записями каждой результирующей строки. Это можно сделать с помощью параметра командной строки -d, который требует от вас указать разделяющий символ, который вы хотите использовать.
Например, чтобы применить двоеточие (:) в качестве разделяющего символа, используйте команду paste следующим образом:
paste -d : file1.txt file2.txt file3.txtВот вывод, который эта команда произвела на нашей системе:
Вопрос 3. Как изменить способ, которым строки объединяются?
По умолчанию команда paste объединяет строки так, что записи в первом столбце принадлежат первому файлу, записи во втором столбце - второму файлу и так далее. Однако, если вы хотите, вы можете изменить это так, чтобы операция объединения происходила по строкам.
Это можно сделать с помощью параметра командной строки -s.
paste -s file1.txt file2.txt file3.txtСледующий вывод:
Вопрос 4. Как использовать несколько разделителей?
Да, вы также можете использовать несколько разделителей. Например, если вы хотите использовать как :, так и |, вы можете сделать это следующим образом:
paste -d ':|' file1.txt file2.txt file3.txtСледующий вывод:
Вопрос 5. Как убедиться, что объединенные строки заканчиваются на NUL?
По умолчанию строки, объединенные с помощью paste, заканчиваются переводом строки. Однако, если вы хотите, вы можете сделать их NUL-терминированными, что можно сделать с помощью параметра -z.
paste -z file1.txt file2.txt file3.txtЗаключение
Как большинство из вас согласится, команда paste несложна для понимания и использования. Она может предложить ограниченный набор параметров командной строки, но инструмент выполняет то, что обещает. Вам может не понадобиться это ежедневно, но paste может сэкономить время в некоторых сценариях. На всякий случай, вот страница man для этого инструмента.
Get new posts in your inbox
No spam. Unsubscribe anytime.