Нет такого файла или каталога после ввода $PATH в терминале

когда пишу в терминал

echo $PATH

мой вывод

:/home/bo/bin:/usr/local/bin:/usr/sbin:/usr/local/sbin:/usr/bin:/sbin:/bin

но когда я пишу так :

$PATH

этот вывод я не правильно понимаю, вывод:

bash: :/home/bo/bin:/usr/local/bin:/usr/sbin:/usr/local/sbin:/usr/bin:/sbin:/bin: No such file or directory

и мой вопрос: почему он не написал " Нет такого файла или каталога?"все каталоги из переменной PATH существует.

22
задан wair92
05.05.2023 18:38 Количество просмотров материала 3316
Распечатать страницу

5 ответов

$PATH - переменная, о которой вы наверняка знаете. Когда эта переменная будет разрешена, это будет то же самое, что ввести :/home/bo/bin:/usr/local/bin:/usr/sbin:/usr/local/sbin:/usr/bin:/sbin:/bin: и ожидая, что что-то случится. Причина echo $PATH работает, потому что вы явно трубопровод его на дисплей, а не говорит терминал "делать"$PATH.

12
отвечен Daniel Park 2023-05-07 02:26

в случае, если вы до сих пор не получают его от других ответов, это то же самое, как это:

$ echo the quick brown fox
the quick brown fox
$ the quick brown fox
bash: the: command not found

$ echo and/or the black and white cats
and/or the black and white cats
$ and/or the black and white cats
bash: and/or: No such file or directory

первое слово каждой командной строки должно быть командаecho такая команда.  the,and/or и :/home/bo/bin:/usr/local/bin:/usr/sbin… нет.  И, по-видимому, когда вы вводите командную строку, которая начинается со слова, которое не является командой, Баш говорит No such file or directory если слово содержит один или несколько / символы, и command not found если нет.

2
отвечен G-Man 2023-05-07 04:43

введя

$PATH

вы на самом деле ничего не делаете, кроме расширения его содержимого в командной строке:

в/Home/бо/ОГРН:/usr/местные/Бен: выполнить/sbin:/usr/местные/sbin:/usr/Бен: файл/sbin:/ОГРН

и это не допустимая команда, законно ведущая к сообщению, которое вы получаете.

что вы ожидали, что набрав только $PATH будет делать?

1
отвечен miroxlav 2023-05-07 07:00

на Linux терминал ждет command, $Path не команды , это variable.

когда вы пишите echo $PATH вы спрашиваете содержимое переменной и командой echo показывая его на экране.

0
отвечен jcbermu 2023-05-07 09:17

переменная $PATH содержит несколько каталогов, разделенных двоеточием. Оболочка ожидает исполняемый файл или другую команду (например, встроенную команду оболочки, например,cd) в качестве входных данных. Команды, такие как ls и cat - это просто исполняемые файлы, расположенные в одном из каталогов $PATH. Несколько каталогов, Соединенных двоеточиями, обычно не образуют правильный путь к файлу UNIX. Примечание: Если вы вводите только один из каталогов без двоеточия, то вы получите другой выход.

0
отвечен jkd 2023-05-07 11:34

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх