Jak Mogę zobaczyć rozmiar plików i katalogów w Linuksie? [zamknięte]
Zamknięte. to pytanie nie spełnia wytycznych dotyczących przepełnienia stosu . Obecnie nie przyjmuje odpowiedzi.
Chcesz poprawić to pytanie? Update the pytanie więc to on-topic dla przepełnienia stosu.
Zamknięte 6 miesięcy temu .
Popraw to pytanieJak mogę zobaczyć rozmiar plików i katalogów w Linuksie? If use df -m
, then it shows the size of all the directory at the top level, but, for the directories and files in the Katalog, jak sprawdzić rozmiar?
22 answers
Użyj polecenia ls
dla plików i polecenia du
dla katalogów.
Sprawdzanie Rozmiarów Plików
ls -l filename #Displays Size of the specified file
ls -l * #Displays Size of All the files in the current directory
ls -al * #Displays Size of All the files including hidden files in the current directory
ls -al dir/ #Displays Size of All the files including hidden files in the 'dir' directory
ls
polecenie nie wyświetli rzeczywistej wielkości katalogów (dlaczego?). Dlatego używamy do tego celu du
.
Sprawdzanie rozmiarów katalogów
du -sh directory_name #Gives you the summarized(-s) size of the directory in human readable(-h) format
du -bsh * #Gives you the apparent(-b) summarized(-s) size of all the files and directories in the current directory in human readable(-h) format
Włączenie opcji -h
w którymkolwiek z powyższych poleceń (dla Ex: ls -lh *
lub du -sh
) daje rozmiar w formacie czytelnym dla człowieka (kb
, mb
,gb
, ...)
Więcej informacje patrz man ls
i man du
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-12-29 03:24:45
Jest du
Komenda.
Rozmiar katalogu i / lub pliku, w przyjazny dla człowieka sposób:
$ du -sh .bashrc /tmp
Zapamiętałem to jako nieistniejące angielskie słowo dush .
--apparent-size
przełącznik wiersza poleceń umożliwia pomiar pozornych rozmiarów (co pokazuje ls
), a nie rzeczywistego użycia dysku.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2021-02-11 23:09:48
Użyj ls -s
do wyświetlenia rozmiaru pliku lub jeśli wolisz {[1] } dla rozmiarów czytelnych dla człowieka.
Dla katalogów użyj du
, i ponownie, du -h
dla rozmiarów czytelnych dla człowieka.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-08-30 13:31:40
Możesz użyć:
ls -lh
Za pomocą tego polecenia zobaczysz widoczną przestrzeń katalogu i prawdziwą przestrzeń plików oraz szczegółowe nazwy wyświetlanych plików, oprócz rozmiaru i daty utworzenia każdego z nich.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-06-14 13:14:31
Istnieje również świetne narzędzie ncdu
- może wyświetlać rozmiar katalogu ze szczegółowymi informacjami o podfolderach i plikach.
Instalacja
Ubuntu:
$ sudo apt-get install ncdu
Użycie
Po prostu wpisz ncdu [path]
w wierszu poleceń. Po kilku sekundach analizy ścieżki zobaczysz coś takiego:
$ ncdu 1.11 ~ Use the arrow keys to navigate, press ? for help
--- / ---------------------------------------------------------
. 96,1 GiB [##########] /home
. 17,7 GiB [# ] /usr
. 4,5 GiB [ ] /var
1,1 GiB [ ] /lib
732,1 MiB [ ] /opt
. 275,6 MiB [ ] /boot
198,0 MiB [ ] /storage
. 153,5 MiB [ ] /run
. 16,6 MiB [ ] /etc
13,5 MiB [ ] /bin
11,3 MiB [ ] /sbin
. 8,8 MiB [ ] /tmp
. 2,2 MiB [ ] /dev
! 16,0 KiB [ ] /lost+found
8,0 KiB [ ] /media
8,0 KiB [ ] /snap
4,0 KiB [ ] /lib64
e 4,0 KiB [ ] /srv
! 4,0 KiB [ ] /root
e 4,0 KiB [ ] /mnt
e 4,0 KiB [ ] /cdrom
. 0,0 B [ ] /proc
. 0,0 B [ ] /sys
@ 0,0 B [ ] initrd.img.old
@ 0,0 B [ ] initrd.img
@ 0,0 B [ ] vmlinuz.old
@ 0,0 B [ ] vmlinuz
Usuń aktualnie zaznaczony element za pomocą d , Zakończ za pomocą CTRL + c
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-08-30 09:00:09
Rozmiar Pliku w MB
ls -l --b=M filename | cut -d " " -f5
Rozmiar Pliku w GB
ls -l --b=G filename | cut -d " " -f5
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-11-29 09:24:43
Przejdź do wybranego katalogu i wykonaj:
$ du -d 1 -h
Gdzie:
-d 1 is the depth of the directories
-h is the human-readable option
Zobaczysz tak:
0 ./proc
8.5M ./run
0 ./sys
56M ./etc
12G ./root
33G ./var
23M ./tmp
3.2G ./usr
154M ./boot
26G ./home
0 ./media
0 ./mnt
421M ./opt
0 ./srv
2.6G ./backups
80G .
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-04-17 16:03:42
Ls-l --block-size = M wyświetli listę długich formatów (potrzebnych do wyświetlenia rozmiaru pliku) i zaokrąglenia rozmiaru pliku do najbliższego MiB.
Jeśli chcesz jednostek MB (10^6 bajtów) zamiast MiB (2^20 bajtów), użyj zamiast tego --block-size=MB.
Jeśli nie chcesz, aby przyrostek m był dołączony do rozmiaru pliku, możesz użyć czegoś takiego jak --block-size=1m. dzięki Stéphane Chazelas za zasugerowanie tego.
Jest to opisane na stronie podręcznika ls; man ls i Szukaj rozmiaru. Informatyka pozwala również na jednostki inne niż MB / MiB, a z wyglądu (nie próbowałem) również dowolne rozmiary bloków(więc możesz zobaczyć Rozmiar pliku jako liczbę 412-bajtowych bloków, jeśli chcesz).
Zauważ, że parametr --block-size jest rozszerzeniem GNU na ls Open Group, więc może to nie działać, jeśli nie masz GNU userland (co robi większość instalacji Linuksa). Ls z GNU coreutils 8.5 obsługuje --rozmiar bloku, jak opisano powyżej.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-07-15 18:58:53
Możesz użyć poniższego polecenia, aby uzyskać listę plików w formacie łatwo czytelnym dla człowieka.
Ls-lrtsh
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-12-20 02:32:02
Jeśli używasz go w skrypcie, użyj stat
.
$ date | tee /tmp/foo
Wed Mar 13 05:36:31 UTC 2019
$ stat -c %s /tmp/foo
29
$ ls -l /tmp/foo
-rw-r--r-- 1 bruno wheel 29 Mar 13 05:36 /tmp/foo
To da ci rozmiar w bajtach. Zobacz też man stat
aby uzyskać więcej opcji formatu wyjściowego.
$ date | tee /tmp/foo
Wed Mar 13 00:54:16 EDT 2019
$ stat -f %z /tmp/foo
29
$ ls -l /tmp/foo
-rw-r--r-- 1 bruno wheel 29 Mar 13 00:54 /tmp/foo
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-03-13 05:19:10
Wszystko czego potrzebujesz to -l
i --block-size
flagi
Rozmiar wszystkich plików i katalogów w katalogu roboczym (w MBs)
ls -l --block-size=M
Rozmiar wszystkich plików i katalogów w katalogu roboczym (w GBs)
ls -l --block-size=G
Rozmiar określonego pliku lub katalogu
ls -l --block-size=M my_file.txt
ls -l --block-size=M my_dir/
ls --help
-l
Użyj formatu długiej listy
--block-size=SIZE
: skaluj rozmiary wedługSIZE
przed ich wydrukowaniem; np.,'--block-size=M'
drukuje rozmiary w jednostkach 1,048,576 bajtów; patrzSIZE
format poniżej
SIZE
jest jednostką całkowitą i opcjonalną (przykład: 10M jest 10*1024*1024). Jednostki to K, M, G, T, P, E, Z, Y (potęgi 1024) lub KB, MB,... (moc 1000).
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-04-25 18:57:09
Cały czas wykonuję następujące czynności:
$ du -sh backup-lr-May-02-2017-1493723588.tar.gz
NB:
-s, --summarize
display only a total for each argument
-h, --human-readable
print sizes in human readable format (e.g., 1K 234M 2G)
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-02 11:39:14
Użyj LS komendy z argumentem-h: [root@hots19 etc]# ls -lh
h: do czytelnego dla człowieka.
Exemple:
[root@CIEYY1Z3 etc]# ls -lh
total 1.4M
-rw-r--r--. 1 root root 44M Sep 15 2015 adjtime
-rw-r--r--. 1 root root 1.5K Jun 7 2013 aliases
-rw-r--r-- 1 root root 12K Nov 25 2015 aliases.db
drwxr-xr-x. 2 root root 4.0K Jan 11 2018 alternatives
-rw-------. 1 root root 541 Jul 8 2014 anacrontab
-rw-r--r--. 1 root root 55M Sep 16 2014 asound.conf
-rw-r--r--. 1 root root 1G Oct 6 2014 at.deny
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-03-13 09:28:55
Aby uzyskać całkowity rozmiar katalogu lub całkowity Rozmiar pliku,
du -csh <directory or filename*> | grep total
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-02-20 09:58:56
Sam jestem użytkownikiem Ubuntu 16.04 i uważam, że polecenie ll
jest zdecydowanie najprostszym sposobem na zobaczenie zawartości katalogu. Zauważyłem, że nie wszystkie dystrybucje Linuksa obsługują to polecenie, ale prawdopodobnie istnieje obejście / instalacja dla każdej dystrybucji.
Przykład:
user@user-XPS-15-9560:/$ ll
total 188
drwxr-xr-x 27 root root 4096 Jan 26 09:13 ./
drwxr-xr-x 27 root root 4096 Jan 26 09:13 ../
drwxr-xr-x 2 root root 4096 Jan 22 15:13 bin/
drwxr-xr-x 4 root root 12288 Jan 29 11:35 boot/
drwxr-xr-x 2 root root 4096 Sep 3 18:14 cdrom/
drwxr-xr-x 20 root root 4440 Feb 5 08:43 dev/
drwxr-xr-x 153 root root 12288 Feb 2 15:17 etc/
drwxr-xr-x 4 root root 4096 Sep 3 18:15 home/
...
Największą zaletą dla mnie jest to, że jest szybki i naprawdę intuicyjny w obsłudze.
UPDATE: nie wiedziałem, że na Ubuntu jest to wstępnie skonfigurowany alias. Możesz łatwo ustawić go samodzielnie wykonując alias ll="ls -la"
w wierszu poleceń, lub dodając ten wpis w Twoim .plik konfiguracyjny bashrc:
sudo nano ~/.bashrc
...add line described above and save file by pressing Ctrl+X and Y...
source ~/.bashrc
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-08 08:58:46
Du-Sh [nazwa_pliku]
Działa doskonale, aby uzyskać rozmiar konkretnego pliku.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-10-21 22:17:41
Musisz się różnić między rozmiarem pliku i użyciem dysku . Główna różnica między nimi wynika z faktu, że pliki są "pocięte na kawałki" i przechowywane w blokach.
Nowoczesny rozmiar bloku to 4KiB, więc pliki będą używać przestrzeni dyskowej wielokrotności 4KiB, niezależnie od tego, jak małe są.
Jeśli użyjesz polecenia stat
możesz zobaczyć obie figury obok siebie.
stat file.c
Jeśli chcesz mieć bardziej kompaktowy widok dla katalogu, możesz użyć ls -ls
, który będzie daje użycie w jednostkach 1KiB.
ls -ls dir
Również du
da ci rzeczywiste użycie dysku, w jednostkach 1KiB, lub dutree z flagą -u
.
Przykład: użycie 1-bajtowego pliku
$ echo "" > file.c
$ ls -l file.c
-rw-r--r-- 1 nacho nacho 1 Apr 30 20:42 file.c
$ ls -ls file.c
4 -rw-r--r-- 1 nacho nacho 1 Apr 30 20:42 file.c
$ du file.c
4 file.c
$ dutree file.c
[ file.c 1 B ]
$ dutree -u file.c
[ file.c 4.00 KiB ]
$ stat file.c
File: file.c
Size: 1 Blocks: 8 IO Block: 4096 regular file
Device: 2fh/47d Inode: 2185244 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 1000/ nacho) Gid: ( 1000/ nacho)
Access: 2018-04-30 20:41:58.002124411 +0200
Modify: 2018-04-30 20:42:24.835458383 +0200
Change: 2018-04-30 20:42:24.835458383 +0200
Birth: -
Ponadto we współczesnych systemach plików możemy mieć migawki, nieliczne pliki (pliki z dziurami ), które dodatkowo komplikują sytuację.
Możesz zobaczyć więcej szczegółów w tym artykule: zrozumienie rozmiaru pliku w Linuksie
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-05-03 09:27:54
Możesz użyć ls - sh w Linuksie możesz też sortować musisz przejść do katalogu, w którym chcesz sprawdzić rozmiar plików
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-03-17 16:32:23
Przejdź do konkretnego katalogu Następnie uruchom poniżej polecenia
# du -sh *
4.0K 1
4.0K anadb.sh --> Shell file
4.0K db.sh/ --> shell file
24K backup4/ --> Directory
8.0K backup6/ --> Directory
1.9G backup.sql.gz --> sql file
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2019-01-07 07:28:35
Możesz użyć ncdu
disk usage analyzer tutaj. Wyświetla rozmiar plików i katalogów w interfejsie ncurses. Możesz przejść do każdego katalogu i zobaczyć rozmiary plików z tego samego interfejsu.
Aby zainstalować
$ sudo apt-get install ncdu
Do analizy
$ ncdu <directory>
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-04-26 08:44:15
ls -sh video.mp4 | sed s/video.mp4//g
Wyjście, 5.6 m
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-07-22 12:45:52
Wolę to polecenie ll -sha
.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2020-08-30 05:23:32