比如说,我有一个这样的目录结构:
.
├── a
│ ├── d
│ │ ├── file1
│ │ └── file2
│ └── e
│ ├── file1
│ └── file2
└── b
├── d
│ ├── file1
│ └── file2
└── e
├── file1
└── file2
我想计算在特定日期之后按顶级目录修改的文件的总字节数。所以我这样做了:
find . -type f|sed -e "s/'//g" |xargs -L1 -IA stat -c "%Y,%s,%n" A|cut -d/ -f1,2
输出如下:
1479334332,20815368,./a
1479334362,58827575,./a
... ...
1479334383,41663496,./b
1479334413,58925879,./b
... ...
第一列是文件修改时间戳,第二列是文件大小,最后一列是顶级目录。现在我想做类似于此sql的聚合:
SELECT SUM(file_size) WHERE modified_timestamp>... GROUP BY directory
我想仅在 bash 中执行此操作,以避免为其编写程序。