UNIX - 根据文件修改日期计算唯一值
UNIX - count unique values based on file modification date
我想根据文件修改日期计算特定目录中所有文件的不同年份数。我的目录是 /filehistory
例如,我的目录中有数千个文件。我想计算与修改日期有关的不同年份的数量。如果所有文件都来自 2014 年,那么我的答案是 1。如果所有文件都来自 2013 年和 2014 年,那么我的答案是 2。依此类推...
ls -l /文件历史 | ????
我不确定在上述命令中的管道之后要做什么。有人可以告诉我吗?
可能有更好的选择,但试试这个:
ls -lT | tr -s ' ' | cut -d ' ' -f 9 | sort | uniq | wc -l
ls -lT
: 显示完整的修改日期和年份的详细列表。
tr -s ' '
:删除多余的 space
cut -d ' ' -f 9
:收集年份列
sort
:对年份进行排序
uniq
:收集唯一年份
wc -l
: 统计行数
我想根据文件修改日期计算特定目录中所有文件的不同年份数。我的目录是 /filehistory
例如,我的目录中有数千个文件。我想计算与修改日期有关的不同年份的数量。如果所有文件都来自 2014 年,那么我的答案是 1。如果所有文件都来自 2013 年和 2014 年,那么我的答案是 2。依此类推...
ls -l /文件历史 | ????
我不确定在上述命令中的管道之后要做什么。有人可以告诉我吗?
可能有更好的选择,但试试这个:
ls -lT | tr -s ' ' | cut -d ' ' -f 9 | sort | uniq | wc -l
ls -lT
: 显示完整的修改日期和年份的详细列表。
tr -s ' '
:删除多余的 space
cut -d ' ' -f 9
:收集年份列
sort
:对年份进行排序
uniq
:收集唯一年份
wc -l
: 统计行数