it-swarm.com.de

Wofür steht "ls --directory"?

In meiner Ubuntu-Version hat der Mann die nächste Info über --directory:

list directory entries instead of contents, and do not dereference symbolic links

Also bin ich ein bisschen verwirrt, wie es funktioniert. Ich habe den Befehl ls --directory verwendet und eine Liste mit allen Verzeichnissen erwartet, aber stattdessen habe ich .

Was genau macht ls --directory oder ls -d?

16
Pau Chorro
$ man ls
...
-d, --directory
              list directories themselves, not their contents

Das aktuelle Verzeichnis wird als . dargestellt, das ist also, was ls -d auflistet.

Die Verzeichnisse im aktuellen Verzeichnis sind Inhalte des Verzeichnisses und werden daher bei dieser Option nicht angezeigt.

Ich verwende die Option -d in einem Alias, um versteckte Dateien und Verzeichnisse anzuzeigen

alias l.='ls -dC .* --color'

Ohne -d listet dies auch den Inhalt der versteckten Verzeichnisse auf, was ich nicht will.

Eine andere Verwendung ist, wenn ich Metadaten eines Verzeichnisses mit der Option -l sehen möchte, nicht mit dessen Inhalt:

$ ls -ld playground
drwxr-xr-x 72 zanna zanna 12288 Mar  1 23:10 playground

Wenn Sie eine Liste der Verzeichnisse im aktuellen Verzeichnis möchten, können Sie verwenden

ls -d */
24
Zanna

Die Verwendung von ls nur mit -d ist fast nutzlos. Es gibt Informationen über das Verzeichnis selbst. Es listet seinen Inhalt nicht auf.

Aus diesem Grund wird keine Verzeichnisliste angezeigt. Die Verzeichnisse, die Sie erwartet haben, sind der "Inhalt" des aktuellen Verzeichnisses

Wenn Sie einfach ls -d ausführen, wird das aktuelle Verzeichnis durch . angezeigt.

Wenn es sinnvoll ist, es mit anderen Schlüsseln wie -l auszuführen.

ls -ld zeigt die Berechtigungen des aktuellen Verzeichnisses an.

[email protected]:~$ ls -ld
drwxrwxr-x 1 pilot6 pilot6 2570 Mar  4 12:14 .

Sie können auch Berechtigungen von jedem anderen Verzeichnis wie sehen

ls -ld /bin

[email protected]:~$ ls -ld /bin
drwxr-xr-x 1 root root 2584 Feb 25 15:19 /bin

Wenn Sie ls -l ohne -d ausführen, haben Sie die Liste aller Berechtigungen für Dateien und Ordner im aktuellen Verzeichnis. Wenn Sie es nicht benötigen, ist dies ein gutes Beispiel für die Verwendung von ls -ld.

Sie können Verzeichnisse im aktuellen Verzeichnis nach auflisten

ls -d */
11
Pilot6

Die Verwendung von ls -d an sich ist ziemlich nutzlos, da es ohne Parameter immer . zurückgibt. Nachdem Sie einen Parameter angegeben haben, ist dies jedoch sinnvoll. Wenn Ihr Benutzername beispielsweise rick lautet und Sie alle Verzeichnisse in Ihrer privaten Verwendung anzeigen möchten, gehen Sie wie folgt vor:

$ ls -d /home/rick/*/
/home/rick/AAC/        /home/rick/EnhanceIO/         /home/rick/silentcast/
/home/rick/Assembly/   /home/rick/EnhanceIO-master/  /home/rick/Templates/
/home/rick/bin/        /home/rick/log/               /home/rick/test/
/home/rick/Desktop/    /home/rick/Music/             /home/rick/tmpe/
/home/rick/Documents/  /home/rick/Pictures/          /home/rick/Videos/
/home/rick/Downloads/  /home/rick/Public/
6

Lassen Sie mich mit Beispielen erklären:

  1. ls: Listet den Inhalt eines Verzeichnisses auf

  2. ls -d oder ls --directory: Verzeichnisse selbst auflisten, nicht deren Inhalt

Beispiele:

ls -d Android-sdk-linux/

# result
Android-sdk-linux/

ls Android-sdk-linux/

# result
add-ons  build-tools  platforms  platform-tools  SDK Readme.txt  temp  tools

In Ihrem Fall von ls -d heißt dies auflisten nur anzeigen das Verzeichnis, in dem ich mich befinde, ist nicht dessen Inhalt (dh . in Linux-Begriffen), daher lautet das Ergebnis: ..

Aber wenn Sie gesagt haben: ls, dann sehen Sie alles, was im aktuellen Verzeichnis . vorhanden ist.

5
George Udosen

ls -d listet die Verzeichnisse selbst auf und nicht deren Inhalt. Dateien werden wie gewohnt aufgelistet. Schauen Sie in man ls, um eine Beschreibung aller Optionen zu erhalten.

. ist das eigene Verzeichnis, das Sie auch verwenden, wenn Sie einen Befehl aus dem aktuellen Verzeichnis ausführen, ./runscript.sh

.. ist das übergeordnete Verzeichnis, das dem aktuellen Verzeichnis übergeordnet ist, wie in cd .., um in der Verzeichnishierarchie schrittweise nach oben zu gelangen

4
Soren A