Скажите, что мы использовали команду "wget www.myurl.com", прямо после того, как нажатие входит, терминал проверяет где-нибудь на установленную программу, названную wget, и затем проверяет на аргументы и проверяет где-нибудь о том, как программа, как предполагается, работает?
В которых областях это проверяет и как это проверяет аргументы?
Принятие Вас использует удар в качестве оболочки, это будет искать весь набор каталогов через переменную окружения PATH.
Обратите внимание, что псевдонимы и функции имеют приоритет к сценариям/двоичным файлам. Можно использовать echo "$PATH"
перечислять каталоги (двоеточие, используемое в качестве разделителя).
Терминал на самом деле не делает ни одного из этого, вместо этого это - программа, работающая в терминале, который обрабатывает команды Bash по умолчанию (оболочка).
При выполнении команды Bash делает набор вещей, но многие из них не важны этому примеру, таким образом, я пропущу их (например, перенаправления, большинство расширений, ключевых слов и builtins).
Когда Вы работаете wget www.myurl.com
, Bash:
wget
PATH
переменная среды для исполняемого файла с тем именем wget
в /usr/bin/wget
. Выполненный type wget
лично убеждаться./usr/bin/wget
, с аргументами wget
(название команды) и www.myurl.com
(параметр командной строки Вы предоставили), Для получения дополнительной информации посмотрите Деятельность Shell в руководстве Bash и ссылках там.