Suchen Sie die Dateigröße in MB

Suchen Sie die Dateigröße in MB

Wie findet man die Dateigröße in MB in der UNIX-Befehlszeile?

Antwort1

Wenn Ihr lsSystem --block-sizebeispielsweise GNU Coreutils lsunterstützt:

ls -s --block-size=1048576 filename | cut -d' ' -f1

Antwort2

du -h file

ODER

ls -lh file

BEARBEITEN

diese Antwort ist falsch, da die Größe je nach Dateigröße auch in GB/KB angegeben werden kann.Bitte entfernen Sie Upvotes.

Antwort3

Ich verwende normalerweise „du -k myfile“, um KBytes zu erhalten und die letzten drei Ziffern optisch wegzulassen, aber ich suche nur nach der ungefähren Größe.

Es stellt sich heraus, dass du oft (immer?) die Option -m für MB hat.

Bedenken Sie, dass die Dateigröße wahrscheinlich leicht von der Menge des verwendeten Speicherplatzes abweicht, da die Festplattenzuweisung in Blöcken und nicht in Bytes erfolgt.

Wenn Sie aufgrund von geringem Speicherplatz nach „fetten“ Dateien suchen, wäre dies eine aufschlussreichere Frage, da die Lösungen vielfältiger wären.

Antwort4

statkann dies tun.

$ ls -l | grep myfile
-rw-------  1 rory rory      3120 2009-07-02 16:58 myfile
$ stat -c '%s' myfile
3120

die es Ihnen in Bytes geben.

Sie können die Megabyte mit der Arithmetik von Bash berechnen:

$ echo $(( $( stat -c '%s' myfile ) / 1024 / 1024 ))
0

(in diesem Fall wird es jedoch abgerundet)

verwandte Informationen