ファイルの日付を変更したい文書ディレクトリに存在するよりも古いものにするには目次。ただ古いものにするために古いものを作ることが目標であるため、時差の価値は重要ではありません。
これを行うには、touch file
現在の日付値より前の日付値を使用する必要があります。目次。最も古いファイルの日付値を回復する方法目次そしてそこから一定時間(例えば1秒)を引くといいでしょうか?
ベストアンサー1
find
-printf
'sまたはwithを使用してタイムスタンプを取得してstat
ソートして、最も古いタイムスタンプを取得できます。次に、必要なものを除き、それを日付基準として使用しますtouch
。find
欠点は、計算時に削除する必要がある分数秒を印刷することです。
oldest=$(stat -c "%Y" dir/*|sort|head -1)
touch -d "@$((oldest-1))" dir/file
# or touch -d "@$((oldest-60))" file # subtract 1 min to see the difference in normal ls -l output.
-d @seconds-since-epoch
GNU touchは日付構文をサポートしています。 POSIXはこれを指定しません。
このstat
コマンドは POSIX では指定されず、GNU coreutils の一部です。https://stackoverflow.com/questions/27828585/posix-analog-of-coreutils-stat-command。
したがって、このソリューションはLinuxシステムでは機能しますが、通常のUNIXシステムでは機能しない可能性があります。