Join, програми і утиліти

Цей термін має також інші значення див. Join.

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

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

Спрощено синтаксис можна представити таким чином:

Якщо в якості одного з файлів вказано «-» (але не обох відразу!), То в цьому випадку замість файлу зчитується стандартне введення. Файли повинні бути відсортовані в зростаючому лексикографічному порядку згідно кодуванні ASCII, по полях з'єднання (зазвичай по першому полю в кожному рядку). Результат операції складають рядки, по одній для кожної пари рядків з відносин файл1 і файл2, які мають однакові поля з'єднання. Як правило, рядок результату складається з загального поля, потім залишку рядка відносини файл1, потім залишку рядка відносини файл2. За замовчуванням роздільником при поданні інформації є пробіл. У разі стандартних роздільників полів послідовність упорядкування не враховує початкові прогалини. Якщо задана опція -t. то всі символи є значущими. Якщо ім'я файлу складається з цифр, воно може провзаємодіяти з опцією -o. що стоїть безпосередньо перед аргументами-файлами.

Як приклад можна взяти два нижченаведених файлу.

Команда join (без переданих додаткових параметрів) видасть наступний результат:

Це викликано тим, що тільки слово «рядок1» зустрілося в обох файлах в якості першого слова рядка.

Ліцензія та поширення

Дана програма знаходиться у власності Фонду вільного програмного забезпечення і поширюється без будь-яких гарантій як вільне ПЗ за ліцензією GNU General Public License.