TR(1) TR(1)
НАЗВАНИЕ
tr - преобразование символов
СИНТАКСИС
tr [-c] [-d] [-s] [цепочка_1 [цепочка_2]]
ОПИСАНИЕ
Команда tr копирует стандартный ввод на стандартный вы-
вод с заменой либо удалением выбранных символов. Вве-
денные символы, найденные в цепочке_1, заменяются на
соответствующие символы из цепочки_2. Допускаются любые
комбинации опций -cds:
-c Цепочка_1 заменяется ее дополнением до множества
ASCII-символов с восьмеричными кодами от 001 до
377.
-d Все входные символы, принадлежащие цепочке_1, бу-
дут удалены.
-s Последовательности одинаковых входных символов,
принадлежащих цепочке_2, сжимаются до одного.
Чтобы помещать в цепочки отрезки алфавита и повторяющи-
еся символы, можно использовать следующие сокращения:
[c1-c2]
Обозначает цепочку символов, коды ASCII которых
принадлежат отрезку от кода символа c1 до c2.
[c*n]
Обозначает символ c, повторенный n раз. Если пер-
вая цифра в n есть 0, n рассматривается как вось-
меричное число; иначе - как десятичное. Нулевое
или отсутствующее n воспринимается как "очень мно-
го"; эта возможность полезна при дополнении цепоч-
ки_2 до длины цепочки_1.
Управляющий символ \ можно использовать, как и в языке
shell, чтобы отменить трактовку символа в цепочке-аргу-
менте как специального. Кроме того, \, за которым идут
одна, две или три восьмеричные цифры, обозначает сим-
вол, код ASCII которого выражается этими цифрами.
ПРИМЕР
Следующая команда помещает список всех слов из файла
f1, по одному на строку, в файл f2. Под словом понима-
ется максимальная последовательность букв. Цепочки-ар-
гументы берутся в кавычки, чтобы shell не интерпретиро-
вал специальные символы; 012 - ASCII-код перевода стро-
ки.
tr -cs "[A-Z][a-z]" "[\012*]" f2
СМ. ТАКЖЕ
ed(1), sh(1).
ascii(5) в Справочнике программиста.
СЮРПРИЗЫ
Символ ASCII NUL (код 000) не может входить ни в цепоч-
ку_1, ни в цепочку_2; всегда удаляется из ввода.
|