/usr/bin/или ~/bin/приоритет

Вот гипотетическая ситуация.... Существует два двоичных файла с тем же именем. Позволяет называют их charles. Один charles находится в/usr/bin/каталоге, и другой charles находится в ~/bin/. Предположение, что ~/bin/включен в путь выполнения, какой charles будет выполняться, когда команду charles назовут?

1
задан 10 January 2015 в 16:14

2 ответа

Если выпущено просто команда это будет то, которое найдено первым в Вашем $PATH. Если Вы делаете

echo $PATH

Вы получаете путь, который используется для нахождения исполняемого файла...

/usr/local/sbin:/usr/local/bin:/usr/sbin:
/usr/bin:/sbin:/bin:/usr/games:/usr/local/games

Если ~/bin/

  • НЕ находится в $PATH это привычка быть найденным.
  • прежде /usr/bin/ тот в ~/bin/ используется;
  • находится позади /usr/bin/ тот в /usr/bin/ используется;

Дополнительное исключение:

Если Вы находитесь в ~/bin/ каталог и делает ./charles тот в ~/bin/ будет выполняться.

1
ответ дан 7 December 2019 в 16:25

Это действительно зависит от того, где/usr/bin и / мусорное ведро и ~ / мусорное ведро находятся в экспортируемой переменной ПУТИ.

EX:

 PATH=/usr/bin:/bin:~/bin
 -----> charles will be found in /usr/bin and used from there

 PATH=~/bin:/usr/bin:/bin
 -----> in this case charles will be found first in the users' bin 
        and used from there
0
ответ дан 11 November 2019 в 02:27

Другие вопросы по тегам:

Похожие вопросы: