Я относительно новичок в программировании в целом, и некоторые учебники говорили мне использовать ls -l
для просмотра файлов в каталоге, а другие говорили ll
. Я знаю, что ls
это короткий список, но есть ли разница между двумя другими?
ls
любой другой командой, которую я помещаю в оболочку? Если я печатаю, which ls
я получаю alias ls='ls --color=auto' /bin/ls
, но если я печатаю (например), which cd
я получаю /usr/bin/which: no cd in (........)
. РЕДАКТИРОВАТЬ: я попробовал еще раз с, which mkdir
и я получил /bin/mkdir
. В чем различие между этими командами, в которых некоторые из них хранятся (?), А /usr/bin
некоторые, по-видимому, нет?
$PATH
. ls
очень часто имеет псевдонимы, поэтому ваша оболочка сообщает псевдоним (который имеет приоритет над двоичным) и фактическое местоположение двоичного файла (в вашем случае, /bin/ls
). Если which
не смог найти cd
, то что-то кажется ужасно неправильным.
cd
является ключевым словом встроенной оболочки, а не программой, найденной в файловой системе. Используйте type cd
и, type ls
чтобы увидеть, что я имею в виду. Некоторые команды просто переопределяются встроенными оболочками: echo
существуют в /bin/echo
, но bash
фактически в большинстве современных оболочек echo
вместо них вызывается встроенная функция (которая обычно имеет расширенные возможности). type
на самом деле говорит вам, что это такое.
which ll
. Вы, вероятно, обнаружите, чтоll
это псевдоним дляls -l
.