我想制作一个irssi脚本,它会注意到服务器上的新文件,但首先我需要一个Perl脚本,它将返回服务器上的最新文件(带目录列表的apache 2.2.16),并在下一个脚本运行后返回if没有新文件,则以前返回null,或者如果服务器上有新文件,则返回该文件的链接。谢谢你的帮助。返回链接到目录列表上的服务器上的最新文件?
0
A
回答
2
记住脚本的开始时间在变
$start_time
您将需要存储一些持久的方式“上次运行时间”(高速缓存,文件,持续会话数据,数据库/ DBM文件)以后。
该脚本产生(使用3210你想要的文件的列表中,如果它只是文件中给定的目录,或
File::Find
如果它在一个目录结构对于每个文件递归,找到它的创建或修改通过
stat
通话(哪一个你想要的)时间戳查找使用
stat
数据的最新文件,如果使用glob
列出的文件,通过扫描列表去做;如果File::Find
,只是做它的回调记忆的一部分“到目前为止最新看到”文件检索“上次运行时间”持久性数据
如果找到的最后一个文件是晚于“上次运行时间”,返回链接到该文件。如果不是,则返回null
将脚本的开始时间(
$start_time
)保存为“最后运行时间”的新值,以便您选择撕裂它的任何位置。
UPDATE
如果文件列表是不是本地的(如Web服务器上),则需要更换glob
步列出文件(及stat
的时间戳)通过抓取包含目录列表的相应HTML页面(例如使用WWW::Mechanize
来检索页面,并使用HTML::Twig
或HTML::Parser
来解析HTML并检索文件名和时间戳。还有专门用于读取HTML内容的模块表和我不会感到惊讶,如果CPAN有一个专门解析Apaches文件列表HTML的模块。
UPDATE2
看起来像我的预感是正确的,有可能的模块从mod_autoindex解析HTML输出:File::Listing::apache
(libwww-perl
发行的一部分)
相关问题
- 1. Drupal:主链接项目到服务器上的相对文件
- 2. 获取服务器上的目录中的文件列表iPhone
- 3. 将文件上传到服务器上的其他目录
- 4. 创建下载链接到文件服务器上的文件
- 5. 如何列出ftp服务器上的目录中的文件?
- 6. 链接到服务器上的pdf
- 7. 链接到不同的服务器上的文件
- 8. Bash脚本scp在远程服务器上的目录中的最新文件
- 9. 上传文件到服务器并返回文件名称
- 10. 如何在目录中的服务器上列出文件名?
- 11. 如何在https服务器上的目录中列出文件
- 12. 在Wordpress中链接到服务器上的文件
- 13. 将文件复制到FTP服务器上的不同目录
- 14. Scala Lift - 将上传的文件保存到服务器目录
- 15. 上传文件在服务器上的特定目录
- 16. 服务器上链接文件/文件夹的访问控制
- 17. ASP.Net目录中的文件列表+链接到文件
- 18. 在发布服务器上使用vba更新文件链接
- 19. 在链接服务器上创建表?
- 20. 在服务器上列出目录
- 21. 在服务器上创建动态链接返回警告
- 22. 过滤器链接列表并返回新的链接列表C
- 23. codeigniter网站上的链接在新服务器上断开
- 24. Java:通过网页显示服务器上的目录和文件列表
- 25. 从链接服务器返回变量
- 26. codeignaiter 404 - 找不到文件或目录。在服务器上
- 27. 春季MVC上传文件到服务器目录
- 28. 将文件上传到服务器目录
- 29. 文件存在于服务器上但不是由列表目录命令返回
- 30. 如何将ftp服务器上的文件复制到java中同一服务器上的目录中?
感谢您的帮助:) – James 2011-01-21 12:19:18