我被要求获取某个目录中所有文件的行计数,其路径将作为终端参数提供给它。如何获取目录中所有文件的行数
我的解决方案迄今:
wc -l "$1/"*
但这样做也给了我这样一些不必要的输出:
wc: '/home/user/Desktop/Dir': Is a directory
所以,我怎么能只打印了实际的文件不是目录的结果? 然后我怎么才能显示最多10分钟前编辑过的内容?
我被要求获取某个目录中所有文件的行计数,其路径将作为终端参数提供给它。如何获取目录中所有文件的行数
我的解决方案迄今:
wc -l "$1/"*
但这样做也给了我这样一些不必要的输出:
wc: '/home/user/Desktop/Dir': Is a directory
所以,我怎么能只打印了实际的文件不是目录的结果? 然后我怎么才能显示最多10分钟前编辑过的内容?
要创建修改时间10分钟前一个文件
touch -t $(date -d '10 min ago' +%Y%m%d%H%M.%S) special_flagtime.txt
添加选项-newer special_flagtime.txt
或! -newer special_flagtime.txt
找到命令。
因此,例如:
find "$1" -type f -newer special_flagtime.txt -exec wc -l {} +
与仅使用标准的'-mtime'初级('-newer'不是)相比,创建标识文件相当繁重。 – chepner
@chepner'-mtime'找不到修改时间少于10分钟的文件-mtime n'文件数据是上次修改n * 24小时前';再次阅读手册页有选项-mmin也可以使用 –
你可以忽略这个错误信息:'WC -l “$ 1 /” * 2>的/ dev/null' – chepner