
root@ubuntu:/etc/openvpn# ls -l test.conf -rw-r--r-- l root root 791 Mar 20 09:23 test.conf
Was bedeutet der obige Befehl?
Antwort1
Das ist kein Befehl. EsenthältEin Kommando.
Es handelt sich um eine Eingabeaufforderung, gefolgt von einem Befehl und der Ausgabe des Befehls. Der Befehl selbst lautet:
ls -l test.conf
Dieser Befehl zeigt Informationen über die Datei namens an, die test.conf
sich imAktuelles Verzeichnis.Der ls
Befehlzeigt (oderListen) Informationen zu Dateien. Das -l
Flag sorgt dafür, dass die Informationen in Langform angezeigt werden, anstatt nur den Dateinamen anzuzeigen.
( ls
ohne ein Flag wie -l
wird am häufigsten verwendet, um mehrere Dateien aufzulisten oder festzustellen, ob eine Datei existiert, kann aber auch mit einer Datei verwendet werden, von deren Existenz bekannt ist; standardmäßig wird in Ubuntu bei der Ausgabe hervorgehobenls filename
filename
und zwar auf eine Weise, die erkennen lässt, um welche Art von Datei es sich handelt. Beispielsweise wird eine bestimmte Farbe verwendet, wenn es sich um ein Verzeichnis handelt, und eine andere, wenn es als ausführbar gekennzeichnet ist.)
Die Ausgabe ist:
-rw-r--r-- l root root 791 Mar 20 09:23 test.conf
Das bedeutet, die Datei:
- ist keinVerzeichnis(
-rw-r--r--
beginnt nicht mitd
) - ist nicht-setuidund nicht setgid (kein
s
in-rw-r--r--
) und nicht-klebrig(NEINt
) - ist lesbar und beschreibbar durch seinen Besitzer (
rw-
für Besitzer), aber nur lesbar durch andere Benutzer (r--
für Gruppenmitglieder,r--
wiederum für andere) — siehedie Community-Dokumentation zu Berechtigungen - Istim Besitzdurch den Benutzer
root
(mitroot
alsGruppeIdentität auch) - ist 791BytesInGröße
- meldet, dass es zuletzt am 20. März um 9:23 Uhr geändert (oder erstellt) wurde
- hat den Namen
test.conf
DerAnfangder Zeile ist eine Eingabeaufforderung; dies wird dem Benutzer in einer Shell angezeigt, um ihn darauf hinzuweisen, dass er einen Befehl eingeben kann. Eingabeaufforderungen werden häufig so konfiguriert, dass sie dem Benutzer hilfreiche Informationen liefern. Hier lautet die Eingabeaufforderung:
root@ubuntu:/etc/openvpn#
Dies bedeutet, dass der aktuelle Benutzer ist root
, der Hostname der Maschine ist ubuntu
(was normalerweise bedeutet, dass dies einLive-CD/DVD/USBSystem, aber jemand könnte seine Maschine ubuntu
auch in einem installierten System benennen), und das aktuelle Verzeichnis ist /etc/openvpn
(wo sich die Konfigurationsdaten fürOpenVPNgespeichert sind, siehe auch dieUbuntu OpenVPN-Dokumentation).
Das #
Zeichen zeigt an, dass es sich um einSuperuserShell (was zu erwarten ist, da sie root gehört,der Superuser); andernfalls wäre es so gewesen $
(beachten Sie jedoch, dass diese Konvention nicht überall befolgt wird und einige Shells standardmäßig auf gesetzt sind, %
was jedoch nichts über die Fähigkeiten der Shell aussagt).
Antwort2
Ich glaube, Sie haben ein Missverständnis mit demStrukturdieser Zeile.
Der erste Satz ist bezeichnendder Benutzerzu einem bestimmtenComputerdas ist in der erwähntenOrdner:
root@ubuntu:/etc/openvpn#
Hier hast du:
- Benutzer = "root"
- Maschinenname = "ubuntu"
- Standort = "/etc/openvpn"
und die entsprechenden Trennzeichen zwischen ihnen sind @
, :
und#
Der Befehl, der nach dem letzten Trennzeichen ( #
) steht, lautet:
ls -l test.conf
Sie erhalten folgende Ausgabe:
-rw-r--r-- l root root 791 Mar 20 09:23 test.conf