LINUX.ORG.RU

История изменений

Исправление vM, (текущая версия) :

почему для вызова терминальных команд, вроде cd, dd, ffmpeg или btop, вручную не указывается путь к ним

Не для всякой команды есть отдельная программа со своим отдельным исполняемым объектным файлом. У каждого командного интерпретатора есть «встроенные» команды, которые инерпретатор выполняет сам.

Например, cd в системах, созданных по аналогии c UNIXом бессмысленно делать в виде отдельной программы. По завершении программы working directory останется тот же самый, что и до выполнения.

Вот, например, список встроенных команд GNU bashа, начинающихся на «c»

help -d c
caller - Return the context of the current subroutine call.
case - Execute commands based on pattern matching.
cd - Change the shell working directory.
command - Execute a simple command or display information about commands.
compgen - Display possible completions depending on the options.
complete - Specify how arguments are to be completed by Readline.
compopt - Modify or display completion options.
continue - Resume for, while, or until loops.
coproc - Create a coprocess named NAME.

Интерпретатор может обрабатывать сокращения и алиасы(псевдонимы) команд:

alias bls=/bin/ls
bls /
bin  boot  dev  etc  home  init  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var

Интерпретор может искать программы для выполнения «внешних» команд в PATH (с помощью exec** или чего-то подобного), как Вы верно написали, или ещё в каких-то известных ему местах.

терминальных команд

И почему команды «терминальные»? 🙄

Исправление vM, :

почему для вызова терминальных команд, вроде cd, dd, ffmpeg или btop, вручную не указывается путь к ним

Не для всякой команды есть отдельная программа со своим отдельным исполняемым объектным файлом. У каждого командного интерпретатора есть «встроенные» команды, которые инерпретатор выполняет сам.

Например, cd в системах, созданных по аналогии c UNIXом бессмысленно делать в виде отдельной программы. По завершении программы working directory останется тот же самый, что и до выполнения.

Вот, например, список встроенных команд GNU bashа, начинающихся на «c»

help -d c
caller - Return the context of the current subroutine call.
case - Execute commands based on pattern matching.
cd - Change the shell working directory.
command - Execute a simple command or display information about commands.
compgen - Display possible completions depending on the options.
complete - Specify how arguments are to be completed by Readline.
compopt - Modify or display completion options.
continue - Resume for, while, or until loops.
coproc - Create a coprocess named NAME.

Интерпретатор может обрабатывать сокращения и алиасы(псевдонимы) команд:

alias bls=/bin/ls
bls /
bin  boot  dev  etc  home  init  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var

Интерпретор может искать программы для выполнения «внешних» команд в PATH (с помощью exec** или чего-то подобного), как Вы верно написали, или ещё в каких-то известных ему местах.

терминальных команд

И почему команды «терминальные»? 🙄

Исходная версия vM, :

почему для вызова терминальных команд, вроде cd, dd, ffmpeg или btop, вручную не указывается путь к ним

Не для всякой команды есть отдельная программа со своим отдельным исполняемым объектным файлом. У каждого командного интерпретатора есть «встроенные» команды, которые инерпретатор выполняет сам.

Например, cd в системах, созданных по аналогии c UNIXом бессмысленно делать в виде отдельной программы. По завершении программы working directory останется тот же самый, что и до выполнения.

Вот, например, список встроенных команд GNU bashа, начинающихся на «c»

help -d c
caller - Return the context of the current subroutine call.
case - Execute commands based on pattern matching.
cd - Change the shell working directory.
command - Execute a simple command or display information about commands.
compgen - Display possible completions depending on the options.
complete - Specify how arguments are to be completed by Readline.
compopt - Modify or display completion options.
continue - Resume for, while, or until loops.
coproc - Create a coprocess named NAME.

Интерпретатор может обрабатывать сокращения и алиасы(псевдонимы) команд:

alias bls=/bin/ls
bls /
bin  boot  dev  etc  home  init  lib  lib64  media  mnt  opt  proc  root  run  sbin  srv  sys  tmp  usr  var

Интерпретор может искать программы для выполнения «внешних» команд в PATH, как Вы верно написали, или ещё в каких-то известных ему местах.

терминальных команд

И почему команды «терминальные»? 🙄