ディレクトリの変更タイムスタンプを変更せずに一時ファイルを削除するにはどうすればよいですか?

ディレクトリの変更タイムスタンプを変更せずに一時ファイルを削除するにはどうすればよいですか?

私はテストケースを研究していますが、各テストケースは~/testls -rtl

ディレクトリの変更タイムスタンプを変更せずにディレクトリからファイルを削除できますか?

ベストアンサー1

ファイルを削除したら、ディレクトリのタイムスタンプをリセットする必要があります。 GNUツールを使用すると仮定すると、次のように動作します。

mtime=$(stat -c %y dir)            # get the timestamp, store in $mtime
rm dir/somefile dir/someotherfile  # do whatever you need
touch -d "$mtime" dir              # set the timestamp back

これにより、ディレクトリの変更()およびアクセス()タイムスタンプが元の修正タイムスタンプにmtimeリセットされ、変更タイムスタンプ()も現在の時刻に設定されます。変化は避けられませんが、気にしないかもしれません。atimectimectimeatime

おすすめ記事