神剑山庄资源网 Design By www.hcban.com
需求:ftp获取远程数据的文件,根据文件的创建时间点下载文件。 可以自行扩展根据文件的大小等其他需求。
知识点总结:
1、获取文件的时间:
ls -lrt|awk '{print $6" "$7" "$8}'
时间内容:
Sep 8 16:03
2、时间格式转换
date -d "Sep 8 16:03" +%Y%m%d%H%M
转换结果:
201709081603
3、指定文件名,正则匹配
pattern="${month}.*.dat$" ls -lrt |awk '$9 ~ /'$pattern'/ {print $6" "$7" "$8}'
注意awk里面模式变量用' '括起来,.*为任意字符,$表示以dat结尾。pattern的内容根据需求自行设定
4、对文件时间进行比较
ls -lrt |awk '$9 ~ /'$pattern'/ { ctime="date -d \""$6" "$7" "$8"\" +%Y%m%d%H%M"; ctime|getline filetime; if( filetime > '$checktime' ) print $9 ; }
获取文件的时间,对时间进行转换,然后对转换后的时间与给定的$checktime进行比较,如果比$checkime的时间大,则显示文件名。
|getline 为执行命令获取命令执行的结果。
以上就完成了对本地文件时间进行比较的方法。接下来判断远程主机的文件时间。
5、ftp命令登录远程主机,并过滤得到要查询的文件内容
ftp_cmd(){ ftp -i -n <<! open $ftp_ip user $get_user $get_pwd binary cd ${get_dir} lcd ${local_dir} $* bye ! } pattern="${month}.*.dat$" files=$(ftp_cmd ls -lrt |awk '$9 ~ /'$pattern'/ {\ ctime="date -d \""$6" "$7" "$8"\" +%Y%m%d%H%M"; \ ctime|getline filetime; if( filetime > '$checktime' ) print $9 ; }'|xargs)
通过函数调用实现ftp到指定主机,cd到指定目录,通过awk获取ls -lrt的结果,然后计算时间,把大于指定时间的文件名获取到。
6、下载文件
ftp_cmd mget $files
总结
以上所述是小编给大家介绍的Linux shell ftp命令根据文件日期下载文件的方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!
神剑山庄资源网 Design By www.hcban.com
神剑山庄资源网
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
神剑山庄资源网 Design By www.hcban.com
暂无Linux shell ftp命令根据文件日期下载文件的方法的评论...
更新日志
2024年10月04日
2024年10月04日
- 纪钧瀚《钢琴阅读时光 雨中书店聆听轻音乐》[320K/MP3][203.44MB]
- 群星.1981-名曲65(2014环球复黑王·百代篇)【EMI百代】【WAV+CUE】
- 陈淑桦.1990-娃娃的故事【柯达】【WAV+CUE】
- 戴梅君.2011-问签诗【美华】【WAV+CUE】
- 戴梅君.2011-问签诗【美华】【WAV+CUE】
- 李国祥.1995-九五变奏【嘉音】【WAV+CUE】
- 许景淳.1992-你来自何方【全美唱片】【WAV+CUE】
- 石欣卉.2007-剧欣卉集·完整电视剧主题精丫华纳】【WAV+CUE】
- 群星.2005-LOVE情歌集VOL.5.2CD【正东】【WAV+CUE】
- 孙悦.1996-伙伴【正大国际】【WAV+CUE】
- 纪钧瀚《钢琴阅读时光 雨中书店聆听轻音乐》[FLAC/分轨][399.62MB]
- 证声音乐图书馆《走向自然 疗心爵士乐》[320K/MP3][87.4MB]
- 证声音乐图书馆《走向自然 疗心爵士乐》[FLAC/分轨][184.94MB]
- 陈慧娴.2018-Priscilla-Ism演唱会3CD(2024环球红馆40复刻系列)【环球】【WAV+CUE】
- 郑秀文.1999-我应该得到(国)【华纳】【WAV+CUE】