我的 shell 引擎是Busybox 1.31.0或bash 3.2
我需要获取从find命令中检索到的文件的大小。
我一直在尝试只查找 60 多天前修改过的文件,同时最好以 MB 表示法的单行形式获取所有这些文件的大小。这是我尝试过的。
find -type f -mtime +60 -print0 | xargs -0 du -smc
Run Code Online (Sandbox Code Playgroud)
和
find -type f -mtime +60 -exec du -smc {} \;
Run Code Online (Sandbox Code Playgroud)
前者逐行检索超过 60 天的所有文件(在此之前完全没有问题),但它奇怪地计算了所有这些行之间的大小数次,在最后一行我得到了一个不对应的“总”大小到输出的实际总大小。这是它的样子。
.....
.....
0 ./FOLDER 2018/Copy #183 of ~$DATABASE OTHERS - NOV.18N.xlsx
42 ./FOLDER 2018/F9C8A618.tmp
0 ./FOLDER 2018/Copy #166 of ~$DATABASE PORTFOLIO NOV.18.xlsx
3275 total
10 ./FOLDER 2018/CFDC6981.tmp
2 ./FOLDER 2018/D5AAF4EB.tmp
0 ./LIFE INSURANCE/Copy #15 of ~$Copy of LIFE INSURANCE …
Run Code Online (Sandbox Code Playgroud)