LINUX查看磁盘使用情况

一、本机磁盘使用信息

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$ df -h
# df,disk free
# -h, human-readable
Filesystem Size Used Avail Use% Mounted on
/dev/sdb 251G 20G 219G 9% /
tmpfs 3.1G 0 3.1G 0% /mnt/wsl
tools 83G 68G 15G 83% /init
none 3.1G 0 3.1G 0% /dev
none 3.1G 4.0K 3.1G 1% /run
none 3.1G 0 3.1G 0% /run/lock
none 3.1G 0 3.1G 0% /run/shm
none 3.1G 0 3.1G 0% /run/user
tmpfs 3.1G 0 3.1G 0% /sys/fs/cgroup
C:\ 83G 68G 15G 83% /mnt/c
D:\ 466G 261G 205G 57% /mnt/d
E:\ 466G 92G 375G 20% /mnt/e

二、查看目录及子目录占用空间

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
# du, disk usage,用法如下:

NAME
du - estimate file space usage

SYNOPSIS
du [OPTION]... [FILE]...
du [OPTION]... --files0-from=F

DESCRIPTION
Summarize disk usage of the set of FILEs, recursively for directories.

Mandatory arguments to long options are mandatory for short options too.

-0, --null
end each output line with NUL, not newline

-a, --all
write counts for all files, not just directories

--apparent-size
print apparent sizes, rather than disk usage; although the apparent size is usually smaller, it may be
larger due to holes in ('sparse') files, internal fragmentation, indirect blocks, and the like

-B, --block-size=SIZE
scale sizes by SIZE before printing them; e.g., '-BM' prints sizes in units of 1,048,576 bytes; see
SIZE format below

-b, --bytes
equivalent to '--apparent-size --block-size=1'

-c, --total
produce a grand total

-D, --dereference-args
dereference only symlinks that are listed on the command line

-d, --max-depth=N
print the total for a directory (or file, with --all) only if it is N or fewer levels below the command
line argument; --max-depth=0 is the same as --summarize

--files0-from=F
summarize disk usage of the NUL-terminated file names specified in file F; if F is -, then read names
from standard input

-H equivalent to --dereference-args (-D)

-h, --human-readable
print sizes in human readable format (e.g., 1K 234M 2G)

--inodes
list inode usage information instead of block usage

-k like --block-size=1K

-L, --dereference
dereference all symbolic links
-l, --count-links
count sizes many times if hard linked

-m like --block-size=1M

-P, --no-dereference
dont follow any symbolic links (this is the default)

-S, --separate-dirs
for directories do not include size of subdirectories

--si like -h, but use powers of 1000 not 1024

-s, --summarize
display only a total for each argument

-t, --threshold=SIZE
exclude entries smaller than SIZE if positive, or entries greater than SIZE if negative

--time show time of the last modification of any file in the directory, or any of its subdirectories

--time=WORD
show time as WORD instead of modification time: atime, access, use, ctime or status

--time-style=STYLE
show times using STYLE, which can be: full-iso, long-iso, iso, or +FORMAT; FORMAT is interpreted like
in 'date'
-X, --exclude-from=FILE
exclude files that match any pattern in FILE

--exclude=PATTERN
exclude files that match PATTERN

-x, --one-file-system
skip directories on different file systems

--help display this help and exit

--version
output version information and exit

Display values are in units of the first available SIZE from --block-size, and the DU_BLOCK_SIZE, BLOCK_SIZE
and BLOCKSIZE environment variables. Otherwise, units default to 1024 bytes (or 512 if POSIXLY_CORRECT is
set).

The SIZE argument is an integer and optional unit (example: 10K is 10*1024). Units are K,M,G,T,P,E,Z,Y (pow‐
ers of 1024) or KB,MB,... (powers of 1000).

PATTERNS
PATTERN is a shell pattern (not a regular expression). The pattern ? matches any one character, whereas *
matches any string (composed of zero, one or multiple characters). For example, *.o will match any files
whose names end in .o. Therefore, the command

du --exclude='*.o'
will skip all files and subdirectories ending in .o (including the file .o itself).

AUTHOR
Written by Torbjorn Granlund, David MacKenzie, Paul Eggert, and Jim Meyering.

REPORTING BUGS
GNU coreutils online help: <http://www.gnu.org/software/coreutils/>
Report du translation bugs to <http://translationproject.org/team/>

COPYRIGHT
Copyright © 2017 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later
<http://gnu.org/licenses/gpl.html>.
This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent per‐
mitted by law.

SEE ALSO
Full documentation at: <http://www.gnu.org/software/coreutils/du>
or available locally via: info '(coreutils) du invocation'

几个例子:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
$ du -ah /mnt/d/cancer
0 /mnt/d/cancer/bam
1.1G /mnt/d/cancer/qc/SRR5478491C_1.fastq.gz
1.1G /mnt/d/cancer/qc/SRR5478491C_2.fastq.gz
983M /mnt/d/cancer/qc/SRR5478492C_1.fastq.gz
981M /mnt/d/cancer/qc/SRR5478492C_2.fastq.gz
4.0G /mnt/d/cancer/qc
995M /mnt/d/cancer/SRR5478491_1.fastq.gz
992M /mnt/d/cancer/SRR5478491_2.fastq.gz
937M /mnt/d/cancer/SRR5478492_1.fastq.gz
930M /mnt/d/cancer/SRR5478492_2.fastq.gz
7.8G /mnt/d/cancer
# -a,读取目录并目录下的文件
$ du -sh /mnt/d/cancer
7.8G /mnt/d/cancer
# -s,只统计总使用量,即只统计一级目录

$ du -a /mnt/d/cancer | sort -rn | head
8090892 /mnt/d/cancer
4146356 /mnt/d/cancer/qc
1069092 /mnt/d/cancer/qc/SRR5478491C_1.fastq.gz
1067292 /mnt/d/cancer/qc/SRR5478491C_2.fastq.gz
1018780 /mnt/d/cancer/SRR5478491_1.fastq.gz
1014984 /mnt/d/cancer/SRR5478491_2.fastq.gz
1005984 /mnt/d/cancer/qc/SRR5478492C_1.fastq.gz
1003988 /mnt/d/cancer/qc/SRR5478492C_2.fastq.gz
958692 /mnt/d/cancer/SRR5478492_1.fastq.gz
952080 /mnt/d/cancer/SRR5478492_2.fastq.gz
# 不但统计使用量,还按照大小进行降序排列
  • 本文作者:括囊无誉
  • 本文链接: Linux/diskuse/
  • 版权声明: 本博客所有文章均为原创作品,转载请注明出处!
------ 本文结束 ------
坚持原创文章分享,您的支持将鼓励我继续创作!