В чем смысл команды grep \~ |tr -d \~

В чем смысл команды grep \~ |tr -d \~

17.03.2018 10:19:38 Просмотров 31 Источник
cat $something |  grep \~ |tr -d \~
У вопроса есть решение - Посмотреть?

Ответы - В чем смысл команды grep \~ |tr -d \~ / В чем смысл команды grep \~ |tr -d \~

Является ответом!
aleksandr barakin

17.03.2018 10:44:50

cat $something | grep \~ | tr -d \~

это запуск трёх программ «конвейером».

  1. cat $something — выдать в stdout содержимое файла, имя которого содержится в переменной $something
  2. grep \~ — отфильтровать строки, поступающие в stdin программы grep, передав в stdout только те, что содержат символ ~
  3. tr -d \~ — удалить из поступающих в stdin строк символ ~

почему \~, а не просто ~? для того, чтобы программа, в которой выполняется команда (т.н. «оболочка», «shell») не заменила символ ~ на содержимое переменной окружения $HOME (путь к домашнему каталогу пользвателя, выполнившего команду). с таким же успехом можно было заключить символ ~ в кавычки, одинарные либо двойные: '~' или "~"


доп. чтение:

$ man cat
$ man grep
$ man tr
$ man $SHELL
Закрыть X