Ich bin relativ neu in der Programmierung als Ganzes und einige Tutorials haben mir ls -lgesagt, dass ich Dateien in einem Verzeichnis betrachten soll, und andere haben gesagt ll. Ich weiß, das lsist eine kurze Liste, aber gibt es einen Unterschied zwischen den beiden anderen?
lsanderen Befehlen, die ich in die Shell geschrieben habe? Wenn ich tippe which lsbekomme ich alias ls='ls --color=auto' /bin/ls, aber wenn ich tippe (zum Beispiel) which cdbekomme ich /usr/bin/which: no cd in (........). EDIT: Ich habe es nochmal mit probiert which mkdirund bekam /bin/mkdir. Was ist der Unterschied zwischen diesen Befehlen, in denen einige von ihnen gespeichert sind (?) /usr/binUnd andere anscheinend nicht?
$PATH. lswird sehr oft mit einem Alias versehen, sodass Ihre Shell den Alias (der Vorrang vor der Binärdatei hat) und die tatsächliche Position der Binärdatei (in Ihrem Fall /bin/ls) meldet . Wenn whichnicht finden konnte cd, dann scheint etwas schrecklich falsch.
cdist ein in die Shell eingebautes Schlüsselwort, kein Programm, das in einem Dateisystem gefunden wird. Nutze type cdund um type lszu sehen was ich meine. Einige Befehle werden einfach durch Shell builtins außer Kraft gesetzt: echovor /bin/echo, aber in bashund in der Tat die meisten der modernen Schalen, eine builtin echowird Funktion aufgerufen statt (die in der Regel hat Features erweitert). typesagt dir eigentlich, welches es ist.
which ll. Sie werden wahrscheinlich feststellen, dass dieslltatsächlich ein Alias für istls -l.