linux - How do I make `ls` show file sizes in megabytes? - Unix & Linux Stack Exchange
ls -l --block-size=M
will give you a long format listing (needed to actually see the file size) and round file sizes up to the nearest MiB.
If you want MB (10^6 bytes) rather than MiB (2^20 bytes) units, use --block-size=MB
instead.
If you don't want the M
suffix attached to the file size, you can use something like --block-size=1M
. Thanks Stéphane Chazelas for suggesting this.
If you simply want file sizes in "reasonable" units, rather than specifically megabytes, then you can use -lh
to get a long format listing and human readable file size presentation. This will use units of file size to keep file sizes presented with about 1-3 digits (so you'll see file sizes like 6.1K
, 151K
, 7.1M
, 15M
, 1.5G
and so on.
The --block-size
parameter is described in the man page for ls; man ls
and search for SIZE
. It allows for units other than MB/MiB as well, and from the looks of it (I didn't try that) arbitrary block sizes as well (so you could see the file size as a number of 429-byte blocks if you want to).
Note that both --block-size
and -h
are GNU extensions on top of the Open Group's ls
, so this may not work if you don't have a GNU userland (which most Linux installations do). The ls
from GNU Coreutils 8.5 does support --block-size and -h as described above. Thanks to kojiro for pointing this out.
Không có nhận xét nào:
Đăng nhận xét