1

ディレクトリの 1 つで .php ファイルを抽出しましたが、そこには多くのファイルがあったため、ほとんどのファイルが置き換えられました。

しかし、新しいファイルの変更日が 2013 年 4 月 23 日であるため、問題が発生したため、このディレクトリ内の 2013 年 4 月 23 日ではないすべてのファイルとフォルダーを検索したいと考えています。

別の方法として、2013 年 4 月 23 日に変更されたこのディレクトリ内のすべてのファイルを 30/08/2013 に変更したいと考えています。

ファイルを見つけて変更するにはどうすればよいですか?

FINDTOUCH機能を組み合わせて、すべてのファイルの変更日を置き換えます。

4

1 に答える 1

8

cdPHPファイルを含むフォルダーに移動して、次のことができます。

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 -6060日未満を意味します。

  • -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 に答える