让 `du` 忽略 `.` 和 `..` 条目的大小

让 `du` 忽略 `.` 和 `..` 条目的大小

是否可以忽略每个目录中的和条目du的大小?我找不到特定的开关。...

以下是没有工作:

  • du -S:如果没有子目录,则不会改变任何内容
  • du --exclude=.: 排除所有内容
  • du --exclude=\.:还排除一切
  • du --exclude=..du --exclude=\.\.:不改变任何内容(..仍然计算)

这就是为什么我需要它:du 和 ls 报告不同的目录大小?

(我正在运行 Debian Wheezy 并uname -a输出Linux ... 3.2.0-4-amd64 #1 SMP Debian 3.2.63-2+deb7u1 x86_64 GNU/Linux

答案1

您可以使用 shell 扩展来向 du 提供文件列表:

mtak@frisbee:~/bin$ du *
4   check_100k_email.sh
4   maildir_backup.sh
16  sshdict.pl

或者使用find并仅搜索文件:

mtak@frisbee:~/bin$ find . -type f | xargs du
16  ./sshdict.pl
4   ./check_100k_email.sh
4   ./maildir_backup.sh

相关内容