Подтвердить что ты не робот

\ curl... | bash... для чего нужна косая черта?

глядя на волшебные инсталляторы, которые появляются для всех типов проектов (например, для rvm), вы всегда увидите команды вроде:

\curl ... | bash

например.

\curl -L https://get.rvm.io | bash -s stable

И мне было интересно, почему эти команды начинаются с косой черты - они, похоже, отлично работают без нее.

Любые предложения?

4b9b3361

Ответ 1

Это используется для вызова команды "оригинал", избегая ее вызова с возможными псевдонимами. То есть, отключает возможные псевдонимы в команде curl и настраивается на исходный.

Если у вас

alias grep='grep --color=auto'

а затем вы grep, у него будут цвета. Поэтому, если вы не хотите цвета, вы просто напишете \grep.

Ответ 2

это обратная косая черта

нужно запустить команду, начинающуюся с этого имени (ИЛИ функции), но не ALIAS.

Чтобы обойти и функцию И псевдоним:

command somecommand

Чтобы обойти только псевдоним (и, таким образом, запустить функцию или, если нет функции, команду):

\somecommand

Посмотрим, что имеет преимущество, над которым (я использую bash 2.05b... ymmv)

Я определяю функцию AND и псевдоним с тем же именем, что и команда (ls):

$ alias ls='echo A'
$ function ls { echo B ; }

Использование "type -all ls" показывает порядок оценки:

$ type -all ls
ls is aliased to `echo A'
ls is a function
ls ()
{
    echo B
}
ls is /usr/bin/ls

Но мы также можем узнать, попробовав их:

$ ls
A
$ \ls
B
$ command ls
file1 file2 file3

Итак, порядок приоритета: псевдоним -before- функция -before- команда, принятая по пути.

Конечно, если вы уточняете относительный/абсолютный путь, он затем должен быть командой, указывающей на:

$ /usr/bin/ls
file1 file2 file3

Ответ 3

Он обходит возможный псевдоним curl.