stringtranslate.com

присоединиться (Unix)

join— это команда в Unix и Unix-подобных операционных системах , которая объединяет строки двух отсортированных текстовых файлов на основе наличия общего поля . Он похож на оператор соединения, используемый в реляционных базах данных , но работает с текстовыми файлами.

Обзор

Команда joinпринимает на вход два текстовых файла и несколько опций. Если аргумент командной строки не указан, эта команда ищет пару строк из двух файлов, имеющих одинаковое первое поле (последовательность символов, отличных от пробела), и выводит строку, состоящую из первого поля, за которым следует остальные две строки.

Аргументы программы указывают, какой символ использовать вместо пробела для разделения полей строки, какое поле использовать при поиске совпадающих строк и следует ли выводить несовпадающие строки. Вывод можно сохранить в другой файл, а не печатать с помощью перенаправления .

В качестве примера в двух следующих файлах перечислены известные отцы и матери некоторых людей. Оба файла отсортированы по полю объединения — это требование программы.

Джордж ДжимКумар в курсе
Альберт МартаДжордж Софи

Объединение этих двух файлов (без аргументов) приведет к следующему:

Джордж Джим Софи

Действительно, только «Джордж» является общим первым словом в обоих файлах.

История

joinпредназначен для работы в качестве оператора реляционной базы данных. Он является частью руководства по переносимости X/Open, начиная с выпуска 2 1987 года. Он был унаследован в первой версии POSIX.1 и единой спецификации Unix . [1] [2]

Версия, joinвходящая в состав GNU coreutils , была написана Майком Хертелом. [3] Команда доступна в виде отдельного пакета для Microsoft Windows как часть коллекции UnxUtils , состоящей из собственных Win32- портов распространенных GNU Unix-подобных утилит. [4]

Смотрите также

Рекомендации

  1. ^ printf  - Справочник по оболочке и утилитам, Единая спецификация UNIX , версия 4 от Open Group
  2. ^ printf(1)  -  Руководство по общим командам FreeBSD.
  3. ^ join(1)  -  Руководство по общим командам Linux.
  4. ^ "Native Win32 ports of some GNU utilities". unxutils.sourceforge.net.

External links