Command-Line

在不更改文件內容的情況下遞歸地將目錄中的所有文件標記為已修改

  • December 28, 2016

我在刪除 30 天內未修改的文件的系統上。我需要一些方法來通過將重要文件標記為最近修改來保存它們。我能做到這一點的最佳方法是什麼?就像是for d in *; do; cat $d > $d ; done

cd到該目錄,然後使用此命令僅標記文件:

find . -type f -exec touch {} \;

或此命令甚至標記目錄:

find . -exec touch {} \;

執行後,文件(和文件夾,如果您選擇第二個命令)將被標記為剛剛更改,並且它們的內容不會更改。

該命令的優點是它會遞歸,即使是子目錄和這些子目錄下的文件也會被標記為已更改。

使用touch.

NAME
      touch - change file timestamps

SYNOPSIS
      touch [OPTION]... FILE...

DESCRIPTION
      Update  the  access  and modification times of each FILE to the current
      time.

引用自:https://unix.stackexchange.com/questions/333209