免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2907 | 回复: 5
打印 上一主题 下一主题

[求助]遍历指定日期创建的文件并输出到一个文本文件 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2013-03-28 09:25 |只看该作者 |倒序浏览
公司里面有一个FTP,里面有N多目录,每个人一个目录,其中有30多个,要求他们每天上传一个指定的数据文件。
现在都是手工一个一个打开,看他们每天上传了没有……

这么重复的事情,我就想让电脑做,第一时间想到脚本,结果,google遍了,都是只有遍历文件……本人完全不懂脚本,也不能根据这些遍历文件修改参考成符合自己要求的。
我是这么想的:
0、获取当前日期,如:20130328,
1、首先进入一个子目录
2、获取这个目录下面所有文件的创建日期,格式化成20130328的格式,并把这些日期存到一个数组里面
3、判断:在第2步里面的数组查找,查找到有今天日期的,pass掉,查找不到的,把该子目录名写入到文本文件
4、重复循环,直到所有子目录都循环结束。
5、这样就得到第三步的文本文件,里面就是哪些子目录没有今天创建的文件,也就达到我的目的了:
检查哪些人今天没有上传文件

我的思路可能不是最好的,但目的只有一个:找到今天没有上传文件的人,实际就是某个子目录里面没有一个文件是今天创建的


哪位高人有时间有心情,帮忙奉献一个吧,可以帮助我脱离手工工作……
perl或python都行,因为这两个可以在windows下安装使用。

论坛徽章:
1
15-16赛季CBA联赛之新疆
日期:2017-03-09 12:33:45
2 [报告]
发表于 2013-03-28 12:37 |只看该作者
回复 1# cheneylou


    你这个不用python脚本,只要运行find命令就可以了。
  1. find yourdir -type f -ctime -1
复制代码

论坛徽章:
0
3 [报告]
发表于 2013-03-28 14:19 |只看该作者
回复 2# jeppeter


    谢谢,可我是在windows下了……

你这个命令,间接达到了我的目的,要完全达到,我还要再想办法。谢谢了哈。

find 某目录 -type f -ctime -1 >d:\check.txt

这样check.txt就有所有今天才创建的文件清单了,包含路径


期待其他网友,不知能否分享一步到位的做法:
目录树如下:
root
      A
      B
      C

要求甲乙丙每天上传文件,甲上传到root\A目录下,乙上传到root\B目录下。
通过脚本,自动显示出在root下面所有子目录中,满足这一条件的子目录:子目录下面不存在今天创建的文件

论坛徽章:
0
4 [报告]
发表于 2013-03-28 14:33 |只看该作者
本帖最后由 cheneylou 于 2013-03-28 14:43 编辑

安装了cygwin,可以用find命令了,直接在命令行窗口打印出来没问题,输出到文本文件,换行符都是方框……


方框是windows和unix系列换行符,还有字符编码不同的原因,我下载了个notepad2,替换掉windows系统的记事本就可以正常打开了。

哎,终于暂时半自动化了。

谢谢二楼!


期望全自动化啊,我去shell区求助看看。

论坛徽章:
0
5 [报告]
发表于 2013-03-28 18:09 |只看该作者
os.walk +os.stat+datetime 去看看这个三个 你就知道怎么做了。

论坛徽章:
0
6 [报告]
发表于 2013-03-29 15:43 |只看该作者
完全不懂pytho……

现在半自动化就行了,抓时间看看python,学习学习。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP