我想写一条命令来显示当前目录中磁盘空间的使用情况,不包括子目录的大小。下图描述了当前目录的文件和目录:
du ./ --exclude='./file*'
输出将是:
4 ./dir1
4 .
我得到的是第一个输出,而不是第二个。
答案 0 :(得分:1)
假设当前目录为 / tmp / foo ,该目录没有文件,除了单个目录 / tmp / foo / bar 之外,该目录中有一个副本bash
(1113504字节)。运行tree
实用程序:
tree --du "$(pwd)"
...报告:
/tmp/foo
└── [ 1117600] bar
└── [ 1113504] bash
1121696 bytes used in 1 directory, 1 file
要获取 / tmp / foo 的大小(而不是 / tmp / foo / bar ),则可以:
du -bSd 1 "$(pwd)" | grep -w "$(pwd)$"
输出:
4096 /tmp/foo
同一行代码可以重复使用,只需cd
到任何目录:
cd foo/bar/
du -bSd 1 "$(pwd)" | grep -w "$(pwd)$"
输出:
1117600 /tmp/foo/bar
答案 1 :(得分:0)
答案 2 :(得分:0)
du -Sd 1
输出将是:
4 ./dir1
4 .
答案 3 :(得分:0)
尝试一下。
du -S ./ --exclude ='。/ file *'
输出
4 ./dir1 4 ./