abcd @ ubuntu:〜/ devbase / Shell $ curl -l http://archive.apache.org/dist/tomcat/tomcat-3/
如何解析此输出并使用csh脚本(仅)检索上次修改的文件或目录的名称?
curl是否有根据上次修改文件列出文件的选项?
答案 0 :(得分:0)
如果您正在使用csh编写脚本,那么您已经输了。 ;)
但实际上,这不是一个csh问题。使用curl -R
或--remote-time
选项,该选项将尝试将本地文件设置为与远程文件具有相同的时间戳。然后你只需使用ls -1rt | tail
或者使用本地Unix时间戳找到或者你的船漂浮。这假设远程端提供最后修改的头,通常不是这种情况。但是,如果没有提供该标头,则没有解决方案可以在不更改远程Web服务器的情况下工作。
但是,如果您只想获取最新文件,则可能需要使用-I选项,获取每个文件的标头,并比较最后修改的标头值。理论上,您可以让shell脚本创建一个新的空临时目录,然后对于检查的每个文件,触摸与远程文件同名的文件,并使用最后修改的标头值作为时间戳。然后找到最后一个,再次使用您喜欢的文件系统日期比较代码。或者将路径回显到每个文件中,并使用日期戳以一种易于排序的方式创建文件,只“实际”获取最后排序的文件名;无论哪种方式。