分页: 1 / 1

shell脚本自动话 求教

发表于 : 2012-08-04 18:29
evolution2012GL
我想自己每次下载后 自动归类
比如 我使用firefox上 downthemall(一个下载插件) 下载完成以后 自动把 视频 pdf 音乐归类
请问如何自动判断下载完毕? firefox得downthemall下载结束后是否有一个结果状态信号
如果有 信号如何截取

谢谢大家

Re: shell脚本自动话 求教

发表于 : 2012-08-05 10:50
funicorn
无须如此,首先downthemall并没有结束信号,它只是在下载完成后把文件的.data_part后缀名改为正常。

即便你能捕获这种信号,也是不恰当的。因为: 如果downthemall同时下载很多个文件,你如何决定是每
个文件下载完毕就执行脚本,还是等下载队列完成后执行呢?如果每个都执行,那么过于浪费资源,如果
下载队列完成后再执行,显然有的时候要等待的时间太长,万一你需要下载完毕后立刻使用某个文件呢?

比较合理的做法是运行一个针对downthemall下载路径的监视daemon,每隔一段时间扫描该路径,如果有
新的文件则执行分类动作。

进一步可能的定制:如何避免时间差呢?假如每隔1分钟扫描一次下载路径,你1分钟内查看下载文件,需要
到统一的下载路径,1分钟之后,就要到归类后的路径,这样不方便。那么你可以在执行分类移动时,在原
下载路径保留一个软链,这样就没问题了。

再进一步,如果时间长了,在下载路径中保留的软链越来越多,你不希望这样,那么你可以在执行归类动作
之前清空它。或者你可以通过比较某下载文件的mtime和atime,来决定要不要清除那个软链。

Re: shell脚本自动话 求教

发表于 : 2012-08-05 20:17
evolution2012GL
非常感谢 funicorn 兄弟 || 姐妹
您这么一分析, 我发现自己思维不够严谨, 我只是考虑 找到文件下载完成时得这个点 然后启动归类。 我以为这就完成了。 看完您得分析 我为自己的问题感到脸红。 谢谢您的帮助, 非常感谢。