Знакомство с Bash

Команда tr.

Информация о tr была получена с помощью команды man tr. Команда tr обрабатывает текст посимвольно. Она удаляет или заменяет символы из стандартного ввода, отправляя результат на стандартный вывод. Ее общий синтаксис выглядит так: tr [опция]...набор1 [набор2]. Команда принимает один или два аргумента. Символы, перечисляемые в первом аргументе, подлежат удалению или замене в зависимости от опции. Если второй аргумент присутствует, то символы, которые в нем находятся, заменят символы из набора1. Команда может работать и без опций, тогда она просто заменяет символы из набора1 на символы набора2.

Пример: echo bed | tr abcdefghi '[h-p]'

ilk

-s

Это одна из самых полезных функций, так как она позволяет заменить повторяющиеся подряд символы из набора1 на единственный символ из списка2 и чаще всего применяется для замены нескольких пробелов на один. Как пример:

tr -s [:upper:][:lower:]

Данная команда заменит все повторяющиеся большие и маленькие буквы на единственный символ. Вместо AAAAGjjjFRRs будет AGjFRs.

-d

У нее только один аргумент, так как она удаляет все символы, перечисленные в наборе 1.

Пример: echo delete characters | tr -d a

delete checters

-c, -C

Работает только с символами, которые отсутствуют в наборе1. Удобно сочетать вместе с другими опциями.

-t

Сокращает набор1 до размера набора2. Если не указывается эта опция, то набор2 обрезается, когда его размер больше размера набора1, или дополняется, когда его размеры меньше.