Я относительно новичок в программировании в целом, и некоторые учебники говорили мне использовать 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.