web-dev-qa-db-ja.com

ファイルの元の作成日を保存する方法は?

ファイルマネージャーを使用して、サーバー上のファイルをあるディレクトリから別のディレクトリに移動しています。ファイル作成日時を保存する方法はありますか(最初にサーバーに追加されたとき)?誰かがSSHを提案しましたが、私はそれにあまり詳しくありません。これについての良い指示はありますか?

35
Kakenx

scp-pオプションとともに使用します。

 -p      Preserves modification times, access times, and modes from the original file.

ローカルサーバーからリモートサーバーにファイルをコピーするコマンドの例:

scp -p /home/mylocaldata/test.txt remote.example.com:/home/remote_dir

これは、ユーザーとグループのみの許可フラグ(rwxなど)を保持しないことに注意してください。

63

-tまたは--timesオプションを使用してsshでrsyncすることもできます

rsync -P -e ssh -t <source> <destination>

-Pオプション(--partial --progressと同じ)を使用したいのは、転送を途中で停止(または失敗)してすべてのファイルが削除されず、進行状況が報告されるためです。 man rsync を参照してください

   -t, --times
          This  tells  rsync  to  transfer modification times along with the
          files and update them on the remote system.  Note that if this op‐
          tion  is  not used, the optimization that excludes files that have
          not been modified cannot be effective; in other words,  a  missing
          -t  or -a will cause the next transfer to behave as if it used -I,
          causing all files to be updated (though rsync’s delta-transfer al‐
          gorithm will make the update fairly efficient if the files haven’t
          actually changed, you’re much better off using -t).
0
Boris