如何使用bash脚本中的find命令来检查目录大小。

16 浏览
0 Comments

如何使用bash脚本中的find命令来检查目录大小。

我有一个要求,需要找到大小超过特定值的目录,并为此编写了一个脚本。但是find命令不接受-size部分。有人可以帮我吗?

echo -e "此脚本将为消耗超过给定值的目录生成报告"
read -p "输入文件系统或目录的完整路径:" path
read -p "此脚本将检查大于给定大小的目录,请输入目录大小(以GB为单位):" size
find $path -type d -size +$sizeG -exec ls -ld {} \;

错误信息:

find: 无效的-size类型“+”

0
0 Comments

通过查找命令在bash脚本中检查目录大小的方法

在bash脚本中消除坏的替代错误。用双引号将变量size括起来。

这个问题的原因是,在使用find命令时,如果使用了-type d参数,find命令将无法返回结果。为了解决这个问题,可以尝试使用sudo权限。

示例来自ubuntu:

fatihsennik:~$ find / -type d -size +10G -exec ls -ld {} \;

find: ‘/etc/polkit-1/localauthority’: Permission denied

不,这不是权限被拒绝的错误。如果使用type参数,输出将不会返回结果,但如果使用type f参数,将会返回结果。

0