Unix ベースのシステムで、変更日時をあるファイル/ディレクトリから別のファイル/ディレクトリに「コピー」するにはどうすればよいですか?
6544 次
6 に答える
29
いくつかのオプションがあります:
touch -t STAMP -m file
時間を変更したい場合に使用しますcp --preserve=timestamps
ファイルをコピーしていて、時間を保存したい場合に使用しますtouch -r
「参照」ファイルに時刻を設定するために使用します
于 2013-03-03T00:19:59.117 に答える
3
後で便利になるように、次の行を .bashrc ファイルに追加します。
cptimestamp() {
if [ -z $2 ] ; then
echo "usage: cptimestamp <sourcefile> <destfile>"
exit
fi
touch -d @$(stat -c "%Y" "$1") "$2"
}
「source ~/.bashrc」を実行すると準備完了です。代わりにスクリプトを使用する場合は、最初と最後の行を削除してから、先頭に「#!/bin/sh」を追加します
于 2014-03-17T09:24:40.767 に答える
1
UNIXタイムスタンプ形式を使用してソースファイルのタイムスタンプを取得し、stat
次を使用して宛先ファイルに伝播できますtouch -d
src_file=/foo/bar
dst_file=/bar/baz
touch -d @$(stat -c "%Y" "$src_file") "$dst_file"
注:これは、プレフィックスをGNU coreutils
使用してUNIXタイムスタンプをサポートする場合にのみ機能します@
touch
于 2013-03-03T00:35:12.130 に答える
0
使用しtouch
ます。このような属性を設定できるオプションのフラグがいくつか含まれています。
于 2013-03-03T00:19:47.140 に答える
0
cp を使用している場合は、-p オプションを使用して mod 時間を保持します。cp-p
于 2013-03-03T00:29:36.477 に答える