• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

ls -d funktioniert nicht

user42

Member
Hallo zusammen!

Ich komme mit dem Kommando ls -d nicht klar. Sollte das nicht eigentlich die verzeichnisse auflisten? Was ich bekomme, egal wo ich das Kommando aufrufe, ist ein Punkt also das Verzeichnis selber. Was mach ich da falsch? Nebenbei, gibt es eine Möglichkeit, wie ich alle Dateien mit -R komplett mit ihrem gesamten Pfad auflisten lassen kann?

-Tom[/code]
 
user42 schrieb:
Nebenbei, gibt es eine Möglichkeit, wie ich alle Dateien mit -R komplett mit ihrem gesamten Pfad auflisten lassen kann?
Könntest Du Dich etwas klarer ausdrücken? Was meinst Du, wenn Du "mit -R" sagst?

Willst Du alle Dateien auf dem System auflisten? Oder nur die Dateien, die keine Verzeichnisse sind? Oder nur die regulären Dateien? Oder nur diejenigen unterhalb des aktuellen Verzeichnisses? Und falls nur diejenigen unterhalb des aktuellen Verzeichnisses, sollen die Pfade dann absolut oder relativ zum aktuellen Verzeichnis sein? Muss es "ls" sein oder darf ich Dir "find" anbieten? Fragen über Fragen...
 

moenk

Administrator
Teammitglied
Mir erscheint als wäre hier find eher der passende Befehl.
Code:
find . -name "*"
 
A

Anonymous

Gast
ich verstehe das Problem von user42 schon, er ist wohl der Meinung, dass ls -d ihm nur die Verzeichnisse anzeigen sollte, das stimmt aber so nicht
Code:
robi@Pingu:~> ls b*
bach.zip  brennstoffzelle.zip  buch.txt

baum:
baum      baum.h   test1     test2.bak  test2.e
baum.bak  read.me  test1.cc  test2.cc   test2.o

bilder:
100casio  102casio  copy    hochzeit  sonstiges
101casio  103casio  fertig    tiere

bin:
sdx  tclkit  test
robi@Pingu:~> ls -d b*
bach.zip  baum  bilder  bin  brennstoffzelle.zip  buch.txt
robi@Pingu:~>
ls -d bewirkt, das nur der Verzeichnissname anstatt des gesammten Inhaltes der Verzeichnisse ausgegeben wird. Und genau so ist es auch in der Manpage beschrieben.

Ansonsten was Moenk geschrieben hat.

robi
 
OP
U

user42

Member
OK, ich versuchs mal andersrum. Was ich will ist zweierlei:

Erstens, ich möchte mir nur diejenigen Einträge in einem Verzeichnis, die selbst Verzeichnisse sind, auflisten lassen. Ich dachte, dass es das wäre was
Code:
-d, --directory
              list directory entries instead  of  contents,
              and do not dereference symbolic links
bedeutet. Anscheinend lag ich da falsch.

Zweitens, ich möchte alle Dateien, die ein bestimmtes Suchmuster erfüllen, mit ihrem absoluten Pfad auflisten lassen. Ich will die Dateien nicht haben ich will nur wissen, wo sie sind
 
A

Anonymous

Gast
1. versuchs mal mit find, zB so :
Code:
 find  -type d -maxdepth 1 -mindepth 1
ls kann das nur indirekt, etwa so hier
Code:
ls -al | grep ^d

2.
Code:
 find /startverzeichnis -name "*suchmuster*"
für absoluten Path oder
Code:
 find . -name "*suchmuster*"
für relativen Path ab aktuellem Verzeichnis

robi
 
Oben