UNIX - 根据文件修改日期计算唯一值

时间:2017-10-14 18:06:19

标签: unix ls uniq

我想根据文件修改日期计算特定目录中所有文件的不同年份数。我的目录是/ filehistory

例如,我的目录中有数千个文件。我想计算与修改日期有关的不同年份的数量。如果所有文件都来自2014年,那么我的答案是1.如果所有文件都来自2013年和2014年,那么我的答案是2.依此类推......

ls -l / filehistory | ????

我不确定在上面命令中管道后要做什么。有人可以告诉我吗?

1 个答案:

答案 0 :(得分:1)

可能有更好的选择,但试试这个:

ls -lT | tr -s ' ' | cut -d ' ' -f 9 | sort | uniq | wc -l

ls -lT:显示完整修改日期和年份的详细列表。

tr -s ' ':删除多余的空间

cut -d ' ' -f 9:收集年份列

sort:对年份进行排序

uniq:收集独特的年份

wc -l:计算行数。