тр (Unix)
![]() The tr команда | |
Оригинальный автор(ы) | Дуглас Макилрой ( AT&T Bell Laboratories ) |
---|---|
Разработчик(и) | Различные с открытым исходным кодом и коммерческие разработчики разработчики |
Первоначальный выпуск | ноябрь 1973 года |
Репозиторий | |
Написано в | С |
Операционная система | Unix , Unix-подобные , Plan 9 , Inferno , OS-9 , MSX-DOS , IBM i |
Платформа | Кросс-платформенный |
Тип | Команда |
Лицензия | основные утилиты : GPLv3+ План 9: МОЯ лицензия |
tr — это команда в Unix , Plan 9 , Inferno и Unix-подобных операционных системах. Это сокращение от «translate» или «transliterate» , указывающее на операцию замены или удаления определенных символов во входном наборе данных.
Обзор
[ редактировать ]Утилита считывает поток байтов со своего стандартного ввода и записывает результат на стандартный вывод . В качестве аргументов он принимает два набора символов (обычно одинаковой длины) и заменяет вхождения символов в первом наборе соответствующими элементами из второго набора. Например,
tr 'abcd' 'jkmn'
отображает все символы a в j , b в k , c в m и d в n .
Набор символов можно сократить, используя диапазоны символов. Предыдущий пример можно было бы записать:
tr 'a-d' 'jkmn'
В POSIX- совместимых версиях tr
, набор, представленный диапазоном символов, зависит от локали порядка сортировки , поэтому безопаснее избегать диапазонов символов в сценариях, которые могут выполняться в локали, отличной от той, в которой они были написаны. Диапазоны часто можно заменить наборами символов POSIX , такими как [:alpha:] .
The s
пометить причины tr
сжимать последовательности идентичных соседних символов в выводе в один токен. Например,
tr -s '\n'
заменяет последовательности одного или нескольких символов новой строки одной новой строкой.
The d
пометить причины tr
удалить все токены указанного набора символов со своего входа. В этом случае используется только один аргумент набора символов. Следующая команда удаляет символы возврата каретки.
tr -d '\r'
The c
флаг указывает на дополнение первого набора символов. Призыв
tr -cd '[:alnum:]'
поэтому удаляет все небуквенно-цифровые символы.
Реализации
[ редактировать ]Оригинальная версия tr
был написан Дугласом Макилроем и был представлен в версии 4 Unix . [1]
Версия tr
включенный в состав GNU coreutils, был написан Джимом Мейерингом. [2] Команда доступна в виде отдельного пакета для Microsoft Windows как часть UnxUtils коллекции , состоящей из собственных Win32- портов распространенных GNU Unix-подобных утилит. [3] Он также доступен в оболочке OS-9 . [4] А tr
Команда также является частью ASCII инструментов MSX -DOS2 для MSX-DOS версии 2. [5] Команда tr также была перенесена в операционную систему IBM i . [6]
Большинство версий tr
, включая GNU tr
и классический Unix tr
, работают с однобайтовыми символами и не совместимы с Unicode . Исключением является реализация Heirloom Toolchest , которая обеспечивает базовую поддержку Unicode.
Ruby и Perl также имеют внутренний оператор tr , который работает аналогично. [7] [8] Tcl в Команда string Map является более общей, поскольку она отображает строки в строки, а tr отображает символы в символы. [9]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ Макилрой, доктор медицины (1987). Читатель Research Unix: аннотированные выдержки из Руководства программиста, 1971–1986 (PDF) (Технический отчет). Вычислительная наука. AT&T Bell Laboratories. 139.
- ^ «Tr(1): Перевести/Удалить символы — справочная страница Linux» .
- ^ «Собственные порты Win32 некоторых утилит GNU» . unxutils.sourceforge.net .
- ^ Пол С. Даян (1992). OS-9 Guru-1: Факты . Галактика Индастриал Лимитед. ISBN 0-9519228-0-7 .
- ^ Руководство пользователя инструментов MSX-DOS2 от ASCII Corporation
- ^ ИБМ . «IBM System i Версия 7.2 Программирование Qshell» (PDF) . ИБМ . Проверено 05 сентября 2020 г.
- ^ «tr (Строка) — APIdock» . APIдок . Проверено 12 августа 2015 г.
- ^ "tr-perldoc.perl.org" . perldoc.perl.org . Проверено 12 августа 2015 г.
- ^ «Встроенные команды Tcl — страница руководства по строкам» . Проверено 12 августа 2015 г.
Внешние ссылки
[ редактировать ]
- Единая спецификация UNIX , версия 4 от Open Group. – Справочник по оболочке и утилитам,
- tr(1) — страница руководства Unix 8-го издания.
- FreeBSD по основным командам Руководство –
- Solaris 11.4 по пользовательским командам Справочное руководство –
- Linux пользователя Руководство – Пользовательские команды –
- Plan 9 , том 1 Руководство программиста –
- Inferno по общим командам Руководство –
- примеры использования на examplenow.com