Befehl: Was bedeutet die erste Zeile?

30

Wenn ich das tue, ls -lbekomme ich Folgendes:

calico@A000505:~/Documentos$ ls -l
total 2020
-rwxr-xr-x 1 calico calico    8559 2010-11-16 11:12 a.out
-rwxrw-rw- 1 smt    smt    2050138 2010-10-14 10:40 Java2.pdf
-rwxrw-rw- 1 ocv    ocv        234 2010-11-16 11:11 test.c

Aber was bedeutet das "Gesamtjahr 2020"? Ich habe nur 3 Dateien, es ist also nicht die Anzahl der Dateien oder Verzeichnisse, und ich denke, es ist auch nicht die Größe. Also, was ist es?

oli206
quelle

Antworten:

25

Die Anzahl der 1-KB-Blöcke, die von den Dateien im Verzeichnis nicht rekursiv verwendet werden.

Verwenden Sie ls -lhdiese Option , um eine aussagekräftigere Ausgabe zu erhalten.

Juliano
quelle
5
Genauer gesagt ist dies bei den meisten Implementierungen die Gesamtzahl der Blöcke, die von Dateien in der Verzeichnisliste verwendet werden (vergleiche ls -l ~mit ls -la ~, und ls -lA ~). Die Blockgröße beträgt 1 kB mit GNU-Tools, aber 512B gemäß POSIX und den meisten anderen aktuellen Implementierungen.
Gilles 'SO- hör auf böse zu sein'
Was macht -hdas?
Fund Monica Klage
14

was bedeutet "total" in ls -al

Gute Frage, es bedeutet, dass Sie auf Details achten möchten. Ich werde mit Beispielen veranschaulichen. Unter meinem Home-Verzeichnis /home/elbefindet sich ein Verzeichnis namens tmpdir mit Dateien darunter. Ich wechsle in dieses Verzeichnis und machels -al

el@angeliqe ~/tmpdir $ ls -al
total 20
drwxrwxr-x 4 el users 4096 Dec 21 11:45 .
drwx--x--x 9 el users 4096 Dec 21 11:45 ..
drwxrwxr-x 2 el users 4096 Dec 21 11:45 dirWithFiles
drwxrwxr-x 2 el users 4096 Dec 21 11:44 emptydir
-rw-rw-r-- 1 el users  182 Dec 21 11:45 myfile.txt

Es heißt "insgesamt 20". Das heißt: "tmpdir belegt 20K Speicherplatz auf der Festplatte für alle Verzeichnisse und Dateien".

Mit der Option -h teilen Sie ihm mit, dass er es Ihnen in lesbarer Form geben soll:

el@angeliqe ~/tmpdir $ ls -alh
total 20K
drwxrwxr-x 4 el users 4.0K Dec 21 11:45 .
drwx--x--x 9 el users 4.0K Dec 21 11:45 ..
drwxrwxr-x 2 el users 4.0K Dec 21 11:45 dirWithFiles
drwxrwxr-x 2 el users 4.0K Dec 21 11:44 emptydir
-rw-rw-r-- 1 el users  182 Dec 21 11:45 myfile.txt

Es ist interessant festzustellen, dass ein Verzeichnis, in dem sich nichts befindet, auch 8 KB Speicherplatz belegt. In meinem Fall emptydirenthält es nichts, zeigt jedoch, dass 8 KB verwendet werden

el@angeliqe ~/tmpdir/emptydir $ ls -al
total 8
drwxrwxr-x 2 el users 4096 Dec 21 11:44 .
drwxrwxr-x 4 el users 4096 Dec 21 11:45 ..

Das Hinzufügen eines leeren Verzeichnisses beweist, dass Verzeichnisse 4 KB belegen:

el@angeliqe ~/tmpdir/emptydir $ ls -alh
total 12K
drwxrwxr-x 3 el users 4.0K Dec 21 11:54 .
drwxrwxr-x 4 el users 4.0K Dec 21 11:45 ..
drwxrwxr-x 2 el users 4.0K Dec 21 11:54 blah

Ein weiterer zu untersuchender Befehl ist du:

el@angeliqe ~/tmpdir/emptydir $ du
4       ./blah
8       .

Sie können sich auch Dateigrößen bis zu einer bestimmten Tiefe ansehen:

el@angeliqe ~ $ du -h --max-depth=1
12K     ./.ssh
4.0K    ./my_recycle_bin
8.0K    ./.vim
13G     ./gnuoctbluehost
24K     ./tmpdir
48K     ./.subversion
152K    ./.cpan
13G     .
el@angeliqe ~ $
Eric Leschinski
quelle
5

Niemand erwähnt die -sOption (?). Von man ls:

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

.. Wenn Sie also mit ls -sauflisten, erhalten Sie die Anzahl der Blöcke für jedes Verzeichnis und jede Datei im aktuellen Verzeichnis. Wenn Sie es zusammenfassen, erhalten Sie genau die gleiche Zahl wie total:oben ls -l.

Extra: Um die Blockgröße zu erhalten, aktivieren Sie diese Option .

sobi3ch
quelle