【发布时间】:2013-07-01 11:22:48
【问题描述】:
我可以使用 ssh 访问一个远程文件系统。
我需要:
- 扫描此文件系统以查找比给定日期时间新的所有文件。
- 检索这些文件的名称、大小和 modified_time_stamp 的列表
一些限制:
- 我无法将脚本上传到此远程服务器。我只能通过 ssh 运行命令
- 远程服务器中可能有超过 100k 的文件,并且这个过程应该至少每分钟发生一次,因此 ssh 调用的数量应该最少,最好等于 1
我已经设法得到 (1) 使用这个:
`touch -am -t {timestamp} /tmp/some_filename; find {path} -newer /tmp/some_filename; rm /tmp/some_filename')`
我认为我可以将结果通过管道传输到“xargs ls -l”,然后解析结果以从那里提取大小和时间戳,但后来我找到了this article...
另外,我正在使用 python 运行命令(即它不仅仅是一个命令行),所以可以对来自 ssh 命令的结果进行一些后期处理
【问题讨论】:
-
每分钟对 100,000 个文件进行一次大查找似乎是不明智的。
标签: python ssh scalability finder