-2

我的 .sh 文件如下所示:

#!/bin/sh

FOLDER = '/home/Desktop/myUserName/My_monitored_folder'

ASD= 'cd $FOLDER'
REGEX = '.*xxx.yyy*.*'
$ASD
CMD = 'find -regextype posix-extended -regex $REGEX -mtime +0h10m0s'
$CMD | xargs ls -Blatr** 

我的查找版本是:4.4.2

当我运行这个 shell 文件时:我的目的是获取在该文件夹中老化超过 10 分钟的某种类型的文件(正则表达式仅用于此目的)。有趣的是,-regex没有-mtime把我需要的文件还给我。当我一起使用它们时,它最终会出现在ls -Blatr

mtime不能正常工作。确实mtime根本不起作用。有人可以看看吗?我可能会错过一些东西,提前感谢您的时间。

4

2 回答 2

0

如果没有一些示例文件名,我无法直接重现该问题,但一种可能的解决方法是将正则表达式业务留给grep.

find --mtime +0h10m0s | egrep $REGEX | xargs ...
于 2014-04-30T20:05:22.020 回答
0
#!/bin/sh
OPENDIRECTORY='//My_Monitored_Folder'
REGEXTYPE='posix-extended'
REGEX='.*xxx.yyy*.*'
MINUTESAGED='+15'
CMD="find -regextype $REGEXTYPE -regex $REGEX -mmin $MINUTESAGED"
$OPENDIRECTORY
$CMD | xargs ls -lrt | tr -s " " | cut -d" " -f6-9

最后一个管道只是从终端日志中获取名称和时间。我希望它可以帮助每个寻找这个主题的人

于 2014-06-03T14:30:32.570 回答