Jump to content

тр (Unix)

тр
Оригинальный автор(ы) Дуглас Макилрой
( AT&T Bell Laboratories )
Разработчик(и) Различные с открытым исходным кодом и коммерческие разработчики разработчики
Первоначальный выпуск ноябрь 1973 года ; 50 лет назад ( 1973-11 )
Репозиторий
Написано в С
Операционная система 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]

См. также

[ редактировать ]
  1. ^ Макилрой, доктор медицины (1987). Читатель Research Unix: аннотированные выдержки из Руководства программиста, 1971–1986 (PDF) (Технический отчет). Вычислительная наука. AT&T Bell Laboratories. 139.
  2. ^ «Tr(1): Перевести/Удалить символы — справочная страница Linux» .
  3. ^ «Собственные порты Win32 некоторых утилит GNU» . unxutils.sourceforge.net .
  4. ^ Пол С. Даян (1992). OS-9 Guru-1: Факты . Галактика Индастриал Лимитед. ISBN  0-9519228-0-7 .
  5. ^ Руководство пользователя инструментов MSX-DOS2 от ASCII Corporation
  6. ^ ИБМ . «IBM System i Версия 7.2 Программирование Qshell» (PDF) . ИБМ . Проверено 05 сентября 2020 г.
  7. ^ «tr (Строка) — APIdock» . APIдок . Проверено 12 августа 2015 г.
  8. ^ "tr-perldoc.perl.org" . perldoc.perl.org . Проверено 12 августа 2015 г.
  9. ^ «Встроенные команды Tcl — страница руководства по строкам» . Проверено 12 августа 2015 г.
[ редактировать ]
Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: 9716e27f492954943c3a356a6a20bb29__1690268160
URL1:https://arc.ask3.ru/arc/aa/97/29/9716e27f492954943c3a356a6a20bb29.html
Заголовок, (Title) документа по адресу, URL1:
tr (Unix) - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)