1

I extract .php files in one of my directory and there were many files in there so most of the files replaced !

but I have a problem since the modification date of new files are 23 April 2013 so I want to find all files and folders in this directory that are not 23 April 2013 !

In other way, I want to change all files in this directory that have 23 April 2013 modification date to 30/08/2013 !

How its possible to find and change the files ?

Combine FIND and TOUCH function to replace all files modification date.

4

1 回答 1

8

您可以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 日修改的确切文件,您可以-mtime在 find 命令中使用该参数。

  • -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 行)

于 2013-08-30T00:03:52.360 回答