Abfrage der Anzahl von Dateien in einem Verzeichnis.

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
ManfredG
Beiträge: 112
Registriert: 12.08.2004 17:38:14

Abfrage der Anzahl von Dateien in einem Verzeichnis.

Beitrag von ManfredG » 18.08.2004 22:03:10

Hallo,
gibt es eigentlich eine Möglichkeit die vorhandene Anzahl an Dateien in einem Verzeichnis zu ermitteln?

Danke und liebe Grüße
Manfred

Benutzeravatar
Savar
Beiträge: 7174
Registriert: 30.07.2004 09:28:58
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Berlin

Beitrag von Savar » 18.08.2004 22:07:51

es gibt bestimmt irgendeine Möglichkeit..

hier eine etwas naja.. unorthodoxe Lösung:

Code: Alles auswählen

ls -DA1 | wc -l
MODVOICE/MYVOICE
Debianforum Verhaltensregeln
Log Dateien? -> NoPaste

Benutzeravatar
ExarKun
Beiträge: 114
Registriert: 21.06.2004 08:27:06
Wohnort: Wunsiedel
Kontaktdaten:

Beitrag von ExarKun » 18.08.2004 22:09:19

Code: Alles auswählen

ls -l | expr `wc -l` - 1
so was?

cu tb.

nachtrag: saver hat die etwas schönere lösung ;)
hardware runs the world, software controls the hardware, code generates the software, have you coded today?

traumjob: dynamic durcheinander producer

http://www.galaxy-operations.de

Benutzeravatar
Savar
Beiträge: 7174
Registriert: 30.07.2004 09:28:58
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Berlin

Beitrag von Savar » 18.08.2004 22:11:45

ExarKun hat geschrieben: nachtrag: saver hat die etwas schönere lösung ;)
thx :mrgreen:
MODVOICE/MYVOICE
Debianforum Verhaltensregeln
Log Dateien? -> NoPaste

Benutzeravatar
Joghurt
Beiträge: 5244
Registriert: 30.01.2003 15:27:31
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Joghurt » 19.08.2004 11:12:40

Noch eine:

Code: Alles auswählen

ls -l|grep -c "^-"
"Normalerweise" benutzt man allerdings soetwas wie savars lösung"

Benutzeravatar
Savar
Beiträge: 7174
Registriert: 30.07.2004 09:28:58
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Berlin

Beitrag von Savar » 19.08.2004 11:49:51

Joghurt hat geschrieben:Noch eine:

Code: Alles auswählen

ls -l|grep -c "^-"
"Normalerweise" benutzt man allerdings soetwas wie savars lösung"
nett das ihr das alle sagt.. nur leider hab ich grad selber festgestellt, dass es nicht richtig ist :-(

Joghurts Version ist die kürzeste und dementsprechend bis jetzt einzig sinnvolle

gut die anderen gehen auch... wie z.B.:

Code: Alles auswählen

ls -lA | grep "^-" | wc -l
aber das ist ja quasi ne lange Version von Joghurts seiner..

btw: wenn ihr alle Dateien im aktuellen Verzeichnis + alle Dateien in den Unterverzeichnissen gezählt haben wollt, dann so:

Code: Alles auswählen

find . -type f | wc -l
und wer's ganz hart in der Bash haben will:

Code: Alles auswählen

zahl=0
for i in `ls -lA | grep "^-" | nawk '{print $1}'`; do let zahl++; done
echo $zahl
MODVOICE/MYVOICE
Debianforum Verhaltensregeln
Log Dateien? -> NoPaste

Benutzeravatar
Joghurt
Beiträge: 5244
Registriert: 30.01.2003 15:27:31
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Joghurt » 19.08.2004 12:03:39

Savar hat geschrieben:btw: wenn ihr alle Dateien im aktuellen Verzeichnis + alle Dateien in den Unterverzeichnissen gezählt haben wollt, dann so:

Code: Alles auswählen

 ls -lR | grep -c "^-"

Benutzeravatar
Savar
Beiträge: 7174
Registriert: 30.07.2004 09:28:58
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Berlin

Beitrag von Savar » 19.08.2004 12:20:25

Joghurt hat geschrieben:
Savar hat geschrieben:btw: wenn ihr alle Dateien im aktuellen Verzeichnis + alle Dateien in den Unterverzeichnissen gezählt haben wollt, dann so:

Code: Alles auswählen

 ls -lR | grep -c "^-"
*schlagandenkopf* mensch hab ich grad nen Brett vorm Kopp.. 8)
MODVOICE/MYVOICE
Debianforum Verhaltensregeln
Log Dateien? -> NoPaste

ManfredG
Beiträge: 112
Registriert: 12.08.2004 17:38:14

Beitrag von ManfredG » 19.08.2004 18:30:22

Hallo,
1000 Dank, das funktioniert priema (;-))

Code: Alles auswählen

ls -DA1 | wc -l
Liebe Grüße
Manfred

Benutzeravatar
pdreker
Beiträge: 8298
Registriert: 29.07.2002 21:53:30
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Nürnberg

Beitrag von pdreker » 19.08.2004 18:35:18

Rekusiv:

Code: Alles auswählen

find /verzeichnis -type f | wc -l
Mit Tiefenbeschränkung (3 Ebenen tief):

Code: Alles auswählen

find /verzeichnis -type f -maxdepth 3 | wc -l
find ist da IMO robuster als das "grep ^-"...

Patrick
Definitely not a bot...
Jabber: pdreker@debianforum.de

Antworten