Вперед Назад Содержание

8. Обработка полей в строке

8.1 `cut': вывод определенных частей строки

Утилита `cut' выводит в стандартный вывод выбранные части каждой строки кадого файла. Если имя файла не указано, или в качестве одного из аргументов задан минус '-', то, по умолчанию `cut' считывает данные из стандартного ввода.

Общая запись:

cut [OPTION]... [FILE]...
В следующих пояснениях, BYTE-LIST, CHARACTER-LIST, и FIELD-LIST это одно или более чисел или промежутков (два числа через тире) разделенные запятыми. Байты, символы и поля нумеруются начиная с 1. Могут встречаться незакрытые промежутки: `-M' означает `1-M'; `N-' значит от `N' и до конца строки или последнего поля.

Утилита воспринимает следующие опции (см. так же главу 2 'Общие Опции'):

`-b BYTE-LIST' или `--bytes=BYTE-LIST'

Выводит только байты перечисленные в BYTE-LIST. Симвлы TAB и 'забой' считаются каждый за один байт.

`-c CHARACTER-LIST' или `--characters=CHARACTER-LIST'

Выводит только символы позиции которых перечисленны в CHARACTER-LIST. Ранее эта опция означала то же, что и `-b', из-за интернационализации все изменилось. Симвлы TAB и 'забой' воспринимаются каждый как один символ.

`-d DELIM' или `--delimiter=DELIM'

Для `-f', поля разделяются первым символом в DELIM (по умолчанию TAB).

`-n'

Не отбрасывает многобайтовые символы (эта опция пока не реализованна).

`-s' или `--only-delimited'

Для `-f', не выводит строки не содержащие разделители полей.

8.2 `paste': слияние строк файлов

Утилита `paste' выводит в стандартный вывод строки состояoие, последовательно, из соответствующих строк каждого данного файла, разделенных пробелами. Если имя файла не указано, или в качестве одного из аргументов задан минус '-', то, по умолчанию `paste' считывает данные из стандартного ввода.

Общая запись:

paste [OPTION]... [FILE]...
Утилита воспринимает следующие опции (см. так же главу 2 'Общие Опции'):
`-s' или `--serial'

Склеивает строки одного файла вместо того, чотбы склеивать строки разных файлов.

`-d DELIM-LIST' или `--delimiters DELIM-LIST'

Последовательно использует символы из DELIM-LIST вместо TAB для разделения сливаемых строк. Когда DELIM-LIST исчерпается, он используется снова начиная с первого символа.

8.3 `join': сцепка строк, имеющих общее поле

Утилита `join' выводит в станартный вывод сроку для каждой пары строк (взятых из двух заданных файлов) имеющих общее поле. Если имя файла (но не обоих) не указано, или в качестве одного из аргументов задан минус '-', то, по умолчанию `paste' считывает данные из стандартного ввода.

Общая запись:

join [OPTION]... FILE1 FILE2
FILE1 и FILE2 должны быть уже отсортированны в порядке возрастания (не числовом) по полям сравнения, если не задана опция `-t', они должны быть отсортированны без учета пробелов в конце строки, как в `sort -b'.

По умолчанию: сравниваются первые поля в строке; входные поля ркзделяются одним или несколькими пробелами, начальные пробелы строки игнорируются; выходные поля разделяются пробелами; каждая выходная строка состоит из поля сравнения, оставшихся полей строки из FILE1, и далее оставшихся полей строки из FILE2.

Утилита воспринимает следующие опции (см. так же главу 2 'Общие Опции'):

`-a FILE-NUMBER'

Выводит строку для каждой непарной строки из файла номер FILE-NUMBER (либо `1' либо `2'), дополнительно к нормальному выводу.

`-e STRING'

Заменяет пустые выходные поля на STRING.

`-1 FIELD' или `-j1 FIELD'

Сравнение по полю FIELD (положительное целое) первого файла.

`-2 FIELD' или `-j2 FIELD'

Сравнение по полю FIELD (положительное целое) второго файла.

`-j FIELD'

Эквивалентно `-1 FIELD -2 FIELD'.

`-o FIELD-LIST...'

Составляет каждую выходную строку согласно формату FIELD-LIST. Каждый элемент FIELD-LIST состоит из номера файла (либо 1 либо 2), точки, и номера поля (положительное целое). Элементы списка разделяются запятыми или пробелами. Все списки заданные в опциях `-o' объединяются вместе.

`-t CHAR'

Символ CHAR используется как входной и выходной разделитель полей.

`-v FILE-NUMBER'

Выводит строку для каждой непарной строки из файла номер FILE-NUMBER (либо `1' либо `2'), вместо нормального вывода.

GNU утилита `join' воспринимает так же опции `--help' и `--version' (см. главу 2 'Общие Опции').


Вперед Назад Содержание