web-dev-qa-db-ja.com

ファイルをコピーし、元のファイルと同じタイムスタンプを保持します

ファイルをコピーする必要があり、その後、タイムスタンプ属性を元のファイルとして変更する必要があります。ターミナルまたはその他の方法でそれを行う方法。

11
user829468

元のタイムスタンプを保持する場合は、使用します

$ touch -r <original_file> <new_file>

これにより、別のファイルからタイムスタンプがコピーされます。

詳細については、このブログ投稿を参照してください: 偽のファイルアクセス、タイムスタンプの変更と変更

13
user834545

-pまたは--preserveオプションを追加することにより、cpを使用してコピーするときに元のファイルのタイムスタンプを保持できます。

   -p     same as --preserve=mode,ownership,timestamps

   --preserve[=ATTR_LIST]
          preserve the specified attributes (default: mode,ownership,time‐
          stamps), if  possible  additional  attributes:  context,  links,
          xattr, all

したがって、タイムスタンプのみを保持するには

cp --preserve=timestamps oldfile newfile

または、モードと所有権も保持します

cp --preserve oldfile newfile

または

cp -p oldfile newfile

再帰的コピーには追加のオプションが利用可能です-一般的なものはcp -acp --archive)で、これはさらにシンボリックリンクを保存します。

33
steeldriver