我在我的一个目录中提取.php文件,里面有很多文件,所以大部分文件都被替换了!Linux更改文件修改日期?
但我有一个问题,因为新文件的修改日期是2013年4月23日,所以我想找到所有文件和文件夹在这个目录不是2013年4月23日!
换句话说,我想将这个目录中的所有文件(包含2013年4月23日修改日期)更改为30/08/2013!
如何找到并更改文件?
合并查找和TOUCH函数替换所有文件的修改日期。
我在我的一个目录中提取.php文件,里面有很多文件,所以大部分文件都被替换了!Linux更改文件修改日期?
但我有一个问题,因为新文件的修改日期是2013年4月23日,所以我想找到所有文件和文件夹在这个目录不是2013年4月23日!
换句话说,我想将这个目录中的所有文件(包含2013年4月23日修改日期)更改为30/08/2013!
如何找到并更改文件?
合并查找和TOUCH函数替换所有文件的修改日期。
你可以cd
到包含PHP文件和文件夹:
touch -d '30 August 2013' *.php
或者,如果它与PHP文件子文件夹 - 通过他们递归搜索:
find /path/to/your/php/ -exec touch -d '30 August 2013' *.php {} \;
文件夹 'PHP'在上面的命令将包括在内。
编辑:
如果你只需要找到/正好更改修订于2013年4月23日的文件,你可以在你的find命令使用-mtime
参数。
-mtime +60
表示您正在寻找一个修改于60天前或以上的文件。
-mtime -60
表示小于60天。
-mtime 60
如果您跳过+
或-
意味着恰好60天。
因此修改上面的命令是这样的:
find /path/to/your/php/ -mtime 127 -exec touch -d '30 August 2013' *.php {} \;
其中127是自4月23日天的确切数量(如果我的快速头计算是正确的)。否则,您可以将数字更改为正确的天数,或者如上所述使用+
或-
,如果它不需要“确切”。
你可以阅读更多有关查找命令在这里-mtime参数: http://www.cyberciti.biz/faq/howto-finding-files-by-date/
(是的,我借了3条从那里线)