- 论坛徽章:
- 0
|
急急! 如何用shell读取unix下文件的创建时间并比较!
-----
代码:
ls -l --time-style=+"%Y-%m-%d-%H-%M-%S"|awk '{f=$7;t=strftime("%Y%m%d%H%M%S",mktime(gensub("-"," ","g",$6))-86400);while(getline<f)if($2<t){print f;break;}close(f)}'
还没用数据测试,搂主试试
------
这个代码是用在一个里面只有*.txtd的目录下吗? 我新建了一个目录zjj,下面有一个文件a.txt:
$pwd
/backup/zjj
$more a.txt
32532543 20050428142525 32436 654657
32145366 20050429092315 321435 423242
a.txt: END
然后用了你给的代码:
$ls -l --time-style=+"%Y-%m-%d-%H-%M-%S"|awk '{f=$7;t=strftime("%Y%m%d%H%M%S",mktime(gensub("-"," ","g",$6))-86400);while(getline<f)if($2<t){print f;break;}close(f)}'
显示:
ls: Not a recognized flag: -
ls: Not a recognized flag: -
ls: Not a recognized flag: y
ls: Not a recognized flag: =
ls: Not a recognized flag: +
ls: Not a recognized flag: %
ls: Not a recognized flag: Y
ls: Not a recognized flag: -
ls: Not a recognized flag: %
ls: Not a recognized flag: -
ls: Not a recognized flag: %
ls: Not a recognized flag: -
ls: Not a recognized flag: %
ls: Not a recognized flag: -
ls: Not a recognized flag: %
ls: Not a recognized flag: M
ls: Not a recognized flag: -
ls: Not a recognized flag: %
ls: Not a recognized flag: S
Usage: ls [-1ACFLNRabcdefgilmnopqrstuxE] [File...]
不懂什么意思啊。
大虾 你给的代码是怎么用的呢? 而且我的目录下本来不仅仅有需要执行的文件 还有无用文件, 所以执行的时候还应该让代码只对ABC* 开头的文件进行时间比较哎! |
|