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
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
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.