Поиск по сайту:

Учебник по команде Linux tr для начинающих (с примерами)


На этой странице

  1. Команда Linux tr
  2. Q1. Как преобразовать нижний регистр в верхний с помощью tr?
  3. Вопрос 2. Как удалить лишние пробелы с помощью tr?
  4. Вопрос 3. Как удалить текст с помощью tr?
  5. Q4. Как заменить символы с помощью tr?
  6. Заключение

В зависимости от того, какую работу вы выполняете в командной строке в Linux, вам может понадобиться утилита, которая может действовать как швейцарский армейский нож для быстрого редактирования текста. К счастью, существует инструмент под названием tr, который подходит на эту роль. В этом уроке мы обсудим основы tr, используя несколько простых для понимания примеров.

Но прежде чем мы это сделаем, стоит упомянуть, что все примеры в этой статье были протестированы на компьютере с Ubuntu 18.04 LTS и на Debian 10.

Команда Linux tr

Вот как это объясняет справочная страница инструментов:

Translate, squeeze, and/or delete characters from standard input, writing to standard output.

И вот его синтаксис:

tr [OPTION]... SET1 [SET2]

Вот что означает SET:

SETs are specified as strings of characters.  Most represent themselves.  Interpreted sequences are:

       \NNN   character with octal value NNN (1 to 3 octal digits)

       \\     backslash

       \a     audible BEL

       \b     backspace

       \f     form feed

       \n     new line

       \r     return

       \t     horizontal tab

       \v     vertical tab

Ниже приведены несколько примеров в стиле вопросов и ответов, которые должны дать вам лучшее представление о том, как работает команда tr.

Q1. Как преобразовать нижний регистр в верхний с помощью tr?

Предположим, вы хотите преобразовать предложение \linux tutorial on howtoforge\ в верхний регистр, тогда вот как вы можете это сделать, используя tr.

echo 'linux tutorial on howtoforge' | tr "[:lower:]" "[:upper:]"

Приведенная выше команда произвела следующий вывод в моей системе:

LINUX TUTORIAL ON HOWTOFORGE

Q2. Как удалить лишние пробелы с помощью tr?

Предположим, у вас есть такая строка: \HowtoForge       — чрезвычайно        хороший ресурс для      руководств по Linux\. И требование состоит в том, чтобы удалить лишние пробелы из этой строки.

Вот как вы можете использовать tr для этого:

echo 'HowtoForge       is an extremely        good resource for      Linux tutorials' | tr -s '[:space:]'

Вот результат:

HowtoForge is an extremely good resource for Linux tutorials

Q3. Как удалить текст с помощью tr?

Предположим, вы хотите удалить дефисы из следующей строки: \HowtoForge -- это -- чрезвычайно -- хороший -- ресурс -- для -- Linux -- учебных пособий\. Тогда вот как вы можете это сделать, используя тр.

echo 'HowtoForge -- is -- an -- extremely -- good -- resource -- for -- Linux -- tutorials' | tr -d '-'

Ниже приведен вывод, который он производит:

HowtoForge  is  an  extremely  good  resource  for  Linux  tutorials

Q4. Как заменить символы с помощью tr?

В предыдущем разделе предположим, что требуется заменить дефисы, скажем, точками. Тогда вот как вы можете сделать это, используя tr.

echo 'HowtoForge -- is -- an -- extremely -- good -- resource -- for -- Linux -- tutorials' | tr '-' '.'

Ниже приведен результат, который он произвел:

HowtoForge .. is .. an .. extremely .. good .. resource .. for .. Linux .. tutorials

Заключение

Итак, вы видите, что команда tr — чрезвычайно полезный инструмент, когда дело доходит до редактирования текста. Здесь мы обсудили некоторые основные параметры, но утилита также предлагает множество других параметров командной строки. Во-первых, попробуйте их, и как только вы получите хорошее представление о том, что мы здесь обсуждали, вы сможете узнать больше о tr, перейдя на его справочную страницу.