Ls Befehl         zurück

ls - Verzeichnisinhalt anzeigen
ls entspricht in etwa dem DIR Befehl unter Dos

ls ist einer der wichtigsten Linux Konsolen Befehle

-----------------------------------------------------------------------------------------------

Syntax


Syntax: ls [Optionen] [Namen]

Mit ls werden Verzeichnisinhalte beziehungsweise Informationen über Dateien angezeigt. Als Parameter können Verzeichnis- oder Dateinamen übergeben werden. Zusätzlich können die oben angegebenen Optionen angegeben werden. Die wichtigsten sind:
 

Option             Beschreibung


-a           zeige alle Dateien und Verzeichnisse an; auch die »versteckten«, deren Namen mit  einem Punkt beginnen.


-A         wie »-a«, nur ohne die Einträge ».« und »..«.


-B            Keine Dateien, die auf »~« enden, anzeigen.


-R              rekursiv alle Unterverzeichnisse anzeigen.


-i                 zeige auch die Inode Nummern an.


-l              langes Format: Es werden neben dem Dateinamen auch Grösse, Besitzer, Gruppe und  Zugriffsrechte angezeigt.



-f              wie »-l«, aber ohne Gruppen-Informationen.


-s               zeigt nur Dateinamen und Grössen in Kilobyte an.


--color      farbige Ausgabe nur Unterscheidung verschiedener Dateitypen.


-F                 hänge an bestimmte Dateien Dateien ein zusätzliches Zeichen an, um auf den  Dateityp hinzuweisen (z.B.: »/« für Verzeichnisse; »*« für ausführbare Dateien, »@« für  symbolische Links)


--full-time             vollständige Zeitangaben ausgeben (nur zusammen mit »-l«)


-n                 User- und Gruppen-IDs anstelle der Namen ausgeben.
 
 

NAME
       ls - list directory contents

SYNOPSIS
       ls [OPTION]... [FILE]...

DESCRIPTION
       List information about the FILEs (the current directory by
       default).  Sort entries alphabetically if none of -cftuSUX
       nor --sort.

       -a, --all
              do not hide entries starting with .

       -A, --almost-all
              do not list implied . and ..

       -b, --escape
              print octal escapes for nongraphic characters

       --block-size=SIZE
              use SIZE-byte blocks

       -B, --ignore-backups
              do not list implied entries ending with ~

       -c     with  -lt:  sort  by, and show, ctime (time of last
              modification of file status information)  with  -l:
              show  ctime  and  sort  by  name otherwise: sort by
              ctime

       -C     list entries by columns

       --color[=WHEN]
              control whether color is used to  distinguish  file
              types.  WHEN may be `never', `always', or `auto'

       -d, --directory
              list directory entries instead of contents


       -D, --dired
              generate output designed for Emacs' dired mode

       -f     do not sort, enable -aU, disable -lst

       -F, --classify
              append indicator (one of */=@|) to entries

       --format=WORD
              across  -x, commas -m, horizontal -x, long -l, sin­
              gle-column -1, verbose -l, vertical -C


       --full-time
              list both full date and full time

       -g     (ignored)

       -G, --no-group
              inhibit display of group information

       -h, --human-readable
              print sizes in human readable format (e.g., 1K 234M
              2G)

       --si   likewise, but use powers of 1000 not 1024

       -H     same  as  `--si' for now; soon to change to conform
              to POSIX

       --indicator-style=WORD append indicator with style WORD to
       entry names:
              none (default), classify (-F), file-type (-p)

       -i, --inode
              print index number of each file

       -I, --ignore=PATTERN
              do not list implied entries matching shell PATTERN

       -k, --kilobytes
              like --block-size=1024

       -l     use a long listing format

       -L, --dereference
              list entries pointed to by symbolic links

       -m     fill width with a comma separated list of entries

       -n, --numeric-uid-gid
              list numeric UIDs and GIDs instead of names

       -N, --literal
              print raw entry names  (don't  treat  e.g.  control
              characters specially)

       -o     use long listing format without group info

       -p, --file-type
              append indicator (one of /=@|) to entries

       -q, --hide-control-chars
              print ? instead of non graphic characters

       --show-control-chars
              show  non  graphic characters as-is (default unless

        -Q, --quote-name
              enclose entry names in double quotes

       --quoting-style=WORD
              use quoting style WORD for  entry  names:  literal,
              locale, shell, shell-always, c, escape

       -r, --reverse
              reverse order while sorting

       -R, --recursive       list subdirectories recursively

       -s, --size               print size of each file, in blocks

       -S     sort by file size

       --sort=WORD
              extension -X, none -U, size -S, time -t, version -v

              status -c, time -t, atime -u, access -u, use -u

       --time=WORD
              show time as WORD  instead  of  modification  time:
              atime,  access, use, ctime or status; use specified
              time as sort key if --sort=time

       -t     sort by modification time

       -T, --tabsize=COLS
              assume tab stops at each COLS instead of 8

       -u     with -lt: sort by, and show, access time  with  -l:
              show  access  time and sort by name otherwise: sort
              by access time

       -U     do not sort; list entries in directory order

       -v     sort by version

       -w, --width=COLS
              assume screen width instead of current value

       -x     list entries by lines instead of by columns

       -X     sort alphabetically by entry extension

       -1     list one file per line

       --help display this help and exit

       --version
              output version information and exit

       By default, color is not  used  to  distinguish  types  of
       files.   That  is equivalent to using --color=none.  Using
       the --color option without the optional WHEN  argument  is
       equivalent  to  using  --color=a_

-----------------------------------------------------------------------------------------------------------------------------------

Tipp: Dateien nach Größe sortiert auflisten

Standardmäßig zeigt der Befehl ls eine alphabetische Liste der Inhalte eines Verzeichnisses. Wenn Sie stattdessen ls -S (Size=Größe) aufrufen, sortiert ls nach der Dateigröße, die größten Dateien am Anfang. Der Parameter lässt sich mit anderen kombinieren: Mit ls -lS zum Beispiel erhalten Sie eine ausführliche Ausgabe mit Besitzer und Größe der Dateien in sortierter Form.

Sind sehr viele Dateien in einem Verzeichnis, leiten Sie die Ausgabe an den Betrachter less um:

ls -lS | less

Interessieren Sie sich nur für die "dicksten Brocken" geht es mit dem Parameter -r auch ohne den Umweg über den Betrachter. Das Kommando ls -Sr (reverse=umgekehrt) sortiert die Dateien aufsteigend nach Größe. Die Platzfresser stehen am Ende der Liste, wo Sie sie direkt im Blick haben.


-----------------------------------------------------------------------------------------------------------------------------------------

Frage:

Wie muß der ls Befehl aussehen , wenn er nur Unterverzeichnisse anzeigen soll

also dem Dosbefehl dir *. entsprechen soll.

ls -ld */.

Versteckte Unterverzeichnisse werden damit nicht dargestellt.

Alternative:

find -type d

Wie muß der ls Befehl aussehen , wenn er nur ausführbare Programme anzeigen soll

also dem Dosbefehl dir *.exe entsprechen soll.

Gepostet von: Karsten Nordsiek - Jan 19, 2003 10:22 am ls -la | grep **x**x**x

Ls -la würde zunächst alle Dateien auflisten, durch das Piping des Befehls durch grep wird jedoch mitgeteilt, dass wir nur alle die Dateien listen möchten, die ein Ausführrecht besitzen beschrieben durch das X (Es wird dadurch also eine Art Filter gesetzt).

Wollen wir nur Dateien sehen, die von allen ausgeführt werden dürfen, würde also der Befehl



ls -la | grep **-**-**x bedeuten



Selbstverständlich geht das ganze auch mit anderen Kombinationen (Alle Dateien listen die Root gehören)

usw.

Es gibt keine .exe Datein unter Linux.

Näheres zu den Befehlen kann man in den Manuals von ls und grep nachlesen.

Karsten Nordsiek

Gepostet von: Christian Hausknecht - Jan 22, 2003 4:26 pm Hallo,

das ist zwar so richtig - aber einfacher (und präziser!) geht es mit dem Programm "test".

test -x name liefert beispielsweise true zurück, wenn die Datei name existiert und ausgeführt werden darf.

Dort kann man sehr geziehlt Dateien auf bestimmte Eigenschaften testen. Auch "find" sei hier mal empfohlen, da man damit auch nach Gimmicks wie Datum o.ä suchen kann. Auch das Einstellen der Rekursionstiefe ist oft sehr wichtig.

Ciao,

Hyperion



Wie muß der ls Befehl ausschauen , wenn er die Dateien nach Datum sortiert ausgeben soll ?

ls -t       sortiert die Dateien nach Datum und Uhrzeit der letzten Änderung , die neueste Datei zuerst

zb ls -lt

umgedreht = reverse zb ls -ltr



Wieso zeigt der Befehl ls -l c* nicht nur alle Dateien die mit c anfangen , sondern noch einge mehr an ?

Das "c*" wird von der bash noch vor der Ausführung des Befehls erweitert. Wenn du meinetwegen folgende Dateien und Verzeichnisse in deinem dir hast:

carsten

charly/ <- Dies als Verzeichnis

caesar

... dann wird aus deiner Eingabe:

ls -l carsten charly/ caesar



...und somit zeigt er dir einmal die drei Files und den Inhalt der Verzeichnisses charly/ an.



Wenn dich der Inhalt von Verzeichnissen nicht interessiert, nimm zusätzlich den Parameter -d:



ls -ld c*



Frank

Wie muß der ls Befehl aussehen , wenn er nur ausführbare Programme anzeigen soll

also dem Dosbefehl dir *.exe entsprechen soll ?



ls -la | grep **x**x**x



Ls -la würde zunächst alle Dateien auflisten, durch das Piping des Befehls durch grep wird jedoch mitgeteilt, dass wir nur alle die Dateien listen möchten, die ein Ausführrecht besitzen beschrieben durch das X (Es wird dadurch also eine Art Filter gesetzt).



Wollen wir nur Dateien sehen, die von allen ausgeführt werden dürfen, würde also der Befehl



ls -la | grep **-**-**x bedeuten



Selbstverständlich geht das ganze auch mit anderen Kombinationen (Alle Dateien listen die Root gehören)

usw.



Es gibt keine .exe Datein unter Linux.



Näheres zu den Befehlen kann man in den Manuals von ls und grep nachlesen.





ls - Verzeichnisinhalt anzeigen

ls ohne Optionen zeigt alle Dateien (außer den versteckte, die mit einem - beginnen), symbolische Links und Unterverzeichnisse des aktuellen Verzeichnisses an. Verschiedene Dateitypen, Verzeichnisse und Links werden dabei farblich unterschiedlich dargestellt. Z.B. sind "normale" Dateien schwarz, ausführbare rot, gepackte dunkelrot, Bilder rosa, Verzeichnisse blau und symbolische Links schwarz und fett.

Wichtige Optionen sind z.B. l, a und F. Die Befehle lauten also ls -l, ls -a und ls -F oder in Kombination, z.B. ls -laF. ls -l bewirkt das Anzeigen der langen Dateiliste. An einer Beispielausgabe werden die Spalten von links nach rechts erläutert:



ich@meinrechner: ls -l /etc/vmware

-r--r--r-- 1 root root 314 Jul 12 09:59 config

-r-xr-xr-x 1 root root 9971 Jun 5 21:23 installer.sh

-rw-r--r-- 1 root root 28557 Jul 12 09:59 locations

-rw-r--r-- 1 root root 0 Jul 12 09:59 not_configured

drwxr-xr-x 4 root root 4096 Jul 10 12:08 vmnet1



Die erste Spalte gibt den Typ (Verzeichnis, Datei oder Link) und die Rechte an (dazu unten mehr), dann folgt die Zahl der Links auf das jeweilige Objekt. Jetzt folgen nacheinander: Eigentümer, Gruppe, Dateigröße, Datum der letzten Änderung, Name.



Die Option -a zeigt zusätzlich alle versteckten Dateien an, also diejenigen, die mit einem . beginnen. Die Option -F verdeutlicht den Typ der Objekte zusätzlich zur Farbgebung noch mit einem Zeichen am Ende (z.B. * für eine ausführbare Datei oder / für ein Verzeichnis. Zu ls mit den genannten drei Optionen existieren einfache Alias-Namen, wobei die einfachste (l) ls -alF ausführt. Hier ein Auszug aus /etc/profile zu den Alias-Befehlen von ls:



alias dir='ls -l'

alias ll='ls -l'

alias la='ls -la'

alias l='ls -alF'

alias ls-l='ls -l'



Sie sehen, nicht nur ll bewirkt ls -l, sondern auch der alte DOS-Befehl dir. Sie können also auch mehrere Aliasnamen für denselben Befehl definieren.