我正试图从12小时前删除一个文件,只有12小时前的任何内容我只想追加。
find . -name "forum*.sql" -mmin +600 -mmin -780 -delete
我必须定义类似-mmax的东西吗?
答案 0 :(得分:0)
很抱歉,但我发现你的描述有点难以解析。
以下代码将删除在12-13小时前完全创建/修改的文件。旧文件和较新的文件保留在原位。
原谅var名称的冗长,已经很晚了,我希望他们能让这个解决方案自我记录。
# currentTime=201104272232
TwelveHrsBefore=201104271032
ThirteenHrsBefore=2001104270932
# make some zero files with date/time range for what is to be deleted.
touch -t ${TwelveHrsBefore} upperLimit.tmpFile
touch -t ${ThirteenHrsBefore} lowerLimit.tmpFile
find . -name "forum*.sql" -newer lowerLimit.tmpFile -a ! -newer upperLimit.tmpFile
# when the above is producing the list of files you want to delete,
# append "| xargs /bin/rm -i" to the end of the find command
# to delete the files
# cleanup your tmp files
rm lowerLimit.tmpFile upperLimit.tmpFile
-newer ... -a ! -newer ...
可能会让人感到沮丧。我今天对它进行了轻微的测试,过去我曾将这种技术用于生产工作,但是我没有访问该代码来查看比这个例子更复杂的问题。
我希望这会有所帮助。