我在我的一個目錄中提取.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條從那裏線)