Linux namei Befehl Anleitung für Anfänger (5 Beispiele)

Auf der Linux-Befehlszeile arbeiten Sie mit verschiedenen Arten von Dateien, z.B. Verzeichnissen, symbolischen Links und dergleichen. Manchmal ist es erforderlich, mehr über einzelne Elemente in einem Pfad zu erfahren – welche Art von Datei es ist, wer sein Besitzer ist und vieles mehr. Glücklicherweise gibt es ein integriertes Linux-Kommandozeilenprogramm – genannt Namei – mit dem Sie diese Informationen abrufen können.

In diesem Tutorial werden wir die Grundlagen von namei anhand einiger leicht verständlicher Beispiele diskutieren. Aber bevor wir damit beginnen, ist es erwähnenswert, dass alle Beispiele hier auf einer Ubuntu 18.04 LTS Maschine getestet wurden.

Linux Namei Befehl

Der namei-Befehl unter Linux folgt einem Pfadnamen, bis ein Terminalpunkt gefunden wird. Folgendes ist seine Syntax:

namei [options] pathname...

Und hier ist, was die Man Page über dieses Tool sagt:

namei  interprets  its  arguments as pathnames to any type of Unix file
       (symlinks, files, directories, and so forth).  namei then follows  each
       pathname  until  an  endpoint  is  found (a file, a directory, a device
       node, etc).  If it finds a symbolic link, it shows the link, and starts
       following it, indenting the output to show the context.

This  program is useful for finding „too many levels of symbolic links“
problems.

Im Folgenden finden Sie einige Beispiele im Q&A-Stil, die Ihnen eine gute Vorstellung davon vermitteln sollen, wie der namei-Befehl funktioniert.

Q1. Wie benutzt man namei?

Die grundlegende Bedienung ist ziemlich einfach, alles, was Sie tun müssen, ist, ’namei‘ auszuführen, gefolgt von einem Befehlszeilenpfad.

Zum Beispiel:

namei -v /home/himanshu/Downloads/HTF-review/Nodejs-Docker/1.png

Und hier ist die Ausgabe, die dieser Befehl erzeugt hat:

f: /home/himanshu/Downloads/HTF-review/Nodejs-Docker/1.png
 d /
 d home
 d himanshu
 d Downloads
 d HTF-review
 d Nodejs-Docker
 - 1.png

Die Manualseite des Tools beschreibt ausführlich, wie die Ausgabe zu interpretieren ist.

For each line of output, namei uses the following characters to identify the file type found:

f: = the pathname currently being resolved
d = directory
l = symbolic link (both the link and its contents are output)
s = socket
b = block device
c = character device
p = FIFO (named pipe)
– = regular file
? = an error of some kind

So können Sie sehen, dass der Befehl namei alle Elemente auf dem Weg, den wir ihm geliefert haben, aufgeschlüsselt hat und uns über ihren Typ informiert.

Q2. Wie kann man die Ausgabe von namei vertikal ausrichten?

Dies kannst du mit der Kommandozeilenoption -v tun. Zum Beispiel:

namei -v /home/himanshu/Downloads/HTF-review/Nodejs-Docker/1.png

Und hier ist die Ausgabe:

f: /home/himanshu/Downloads/HTF-review/Nodejs-Docker/1.png
d /
d home
d himanshu
d Downloads
d HTF-review
d Nodejs-Docker
- 1.png

Wenn Sie dies mit der im vorherigen Abschnitt gezeigten Ausgabe vergleichen, werden Sie feststellen, dass es diesmal eine vertikale Ausrichtung gibt.

Q3. Wie kann man namei dazu bringen, Besitzer- und Gruppeninformationen anzuzeigen?

Dies kann mit der Kommandozeilenoption -o erfolgen. Zum Beispiel:

namei -o /home/himanshu/Downloads/HTF-review/Nodejs-Docker/1.png

Hier ist die Ausgabe:

f: /home/himanshu/Downloads/HTF-review/Nodejs-Docker/1.png
 d root     root     /
 d root     root     home
 d himanshu himanshu himanshu
 d himanshu himanshu Downloads
 d himanshu himanshu HTF-review
 d himanshu himanshu Nodejs-Docker
 - himanshu himanshu 1.png

So können Sie sehen, dass die Eigentumsinformationen für jede Datei/jedes Verzeichnis in der Ausgabe angezeigt werden.

Q4. Wie kann man namei dazu bringen, das Ausgabeformat für lange Listen zu verwenden?

Dies kann mit der Kommandozeilenoption -l erfolgen.

namei -l /home/himanshu/Downloads/HTF-review/Nodejs-Docker/1.png

Hier ist die Ausgabe:

f: /home/himanshu/Downloads/HTF-review/Nodejs-Docker/1.png
drwxr-xr-x root     root     /
drwxr-xr-x root     root     home
drwxr-xr-x himanshu himanshu himanshu
drwxr-xr-x himanshu himanshu Downloads
drwxr-xr-x himanshu himanshu HTF-review
drwxr-xr-x himanshu himanshu Nodejs-Docker
-rw-rw-r-- himanshu himanshu 1.png

So können Sie sehen, dass eine dem ls Befehl ähnliche Ausgabe durch den Befehl namei erzeugt wird.

Q5. Wie funktioniert namei mit symbolischen Links?

Wie bereits eingangs erläutert, folgt der Befehl namei standardmäßig einem symbolischen Link. Zum Beispiel ist ‚link1′ auf meinem System ein symbolischer Link zu einer Datei’file1′, also habe ich den Pfad’link1‘ als Eingabe an namei auf folgende Weise übergeben:

namei /home/himanshu/link1

Dann wurde die folgende Ausgabe erzeugt:

f: /home/himanshu/link1
 d /
 d home
 d himanshu
 l link1 -> file1
   - file1

So können Sie sehen, dass der namei-Befehl deutlich die Art der Datei zeigt, die ‚file1‘ ist. Wenn Sie möchten, können Sie das Tool jedoch zwingen, symbolischen Links nicht zu folgen, was Sie mit der Befehlszeilenoption -n tun können.

namei -n /home/himanshu/link1

Hier ist in diesem Fall die Ausgabe:

f: /home/himanshu/link1
 d /
 d home
 d himanshu
 l link1 -> file1

So können Sie sehen, dass das Tool in diesem Fall nicht dem symbolischen Link gefolgt ist.

Fazit

Der Befehl namei ist besonders nützlich bei verschachtelten symbolischen Link-Elementen im Pfad. Hier, in diesem Tutorial, haben wir die meisten der Befehlszeilenoptionen besprochen, die dieses Tool bietet. Sobald Sie damit fertig sind, diese zu üben, gehen Sie zur Man Page des Tools, um mehr darüber zu erfahren.

Das könnte Dich auch interessieren …