【查看文件夹大小】
1
2
3
4
5
6
7
8
9
|
# /lib 目录大小
du
-sh
/lib
# /lib 子目录大小
du
-sh
/lib/
*
# 查看 /lib 目录下普通文件大小
find
/lib
-
type
f -print0 |
xargs
-0
ls
-la | \
awk
-F
' '
'BEGIN{sum=0} {sum+=$5} END{printf "%d bytes\n", sum}'
|
【统计文件数量】
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
# 查看 /lib 目录的总文件数(包含7种文件类型、包含 /lib 目录自身)
find
/lib
|
wc
-l
# 查看/lib 目录中普通文件的数量
find
/lib
-
type
f |
wc
-l
# 用 find、xargs、ls、cut、sort、uniq 等命令组合统计 /usr 目录每种类型的文件数量
# find 的 print0 参数与 xargs -0 参数是为了避免文件名中的特殊字符
# ls 命令带 d 参数是为了不列出目录内容,避免重复统计
find
/usr
-print0 |
xargs
-0
ls
-lad |
cut
-c1 |
sort
|
uniq
-c
# 用 find、xargs、ls、cut、awk 等命令组合统计 /usr 目录每种类型的文件数量
# find 的 print0 参数与 xargs -0 参数是为了避免文件名中的特殊字符
# ls 命令带 d 参数是为了不列出目录内容,避免重复统计
find
/usr
-print0 |
xargs
-0
ls
-lad |
cut
-c1 | \
awk
'{++array[$0]} END{for(key in array){print key, array[key]}}'
# 用 rsync 统计 /lib 目录每种类型的文件数量
# 包含 /lib 目录自身
# --dry-run 空转
# ~/fake_dir 一个不存在的假目录
rsync
-a --stats --dry-run
/lib
~
/fake_dir
|
grep
"^Number of files:"
|
【Linux 的7种文件类型】
- | 普通文件(Regular file) | /etc/passwd | /etc/passwd |
d | 目录(Directory files) | /etc | /etc |
c | 字符设备文件(Character device file) | /dev/tty | /dev/tty |
b | 块设备文件(Block file,硬盘、CDROM) | /dev/sr0 | /dev/sr0 |
s | 套接字文件(Socket file) | /dev/log | /run/nscd/socket |
p | 管道文件 (Named pipe file or just a pipe file) |
/dev/initctl | /run/systemd/initctl/fifo |
l | 符号链接文件(Symbolic link file) | /dev/cdrom | /dev/cdrom |
注:第三列为 CentOS 5.9 下的示例文件,第四列为 Ubuntu 16.04 下的示例文件。
find 关于文件类型 type 的说明:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
$ lsb_release -ds
Ubuntu 16.04.2 LTS
$ LESS=
"+/^\s+-type c"
man
find
-
type
c
File is of
type
c:
b block (buffered) special
c character (unbuffered) special
d directory
p named pipe (FIFO)
f regular
file
l symbolic link; this is never
true
if
the -L option or the -follow option
is
in
effect, unless the symbolic link is broken.
If you want to search
for
symbolic links when -L is
in
effect, use -xtype.
s socket
D door (Solaris)
|
【相关阅读】
*** walker ***
本文转自walker snapshot博客51CTO博客,原文链接http://blog.51cto.com/walkerqt/1958412如需转载请自行联系原作者
RQSLT