1秒未満の精度でmtimeを設定するには?

1秒未満の精度でmtimeを設定するには?

cp -aFinderを使用してファイルをコピーしてこの問題を解決しようとしましたが、今はmtimeがはっきりとコピーされますが、正確さはわずか1秒で、たとえばファイルを表示したときにls -ltrファイルの年代順を混同します。

生ファイルでより高い精度のmtimeを見ることができます。より高い精度でターゲットファイルのmtimesを設定するには?touch -m -t $timestamp1秒精度のみサポートされているようです。

ベストアンサー1

ファイルをコピーしたので、次のことをお勧めしますtouch

touch -r ref-file target-file

SMBを介してファイルをコピーする理由が、すべてのファイルコンテンツを含むアーカイブのローカルディスク容量が不足しているため、tar次の方法を使用してタイムスタンプを含むメタデータのみをコピーできますstar

star -c -dump -meta . > /tmp/meta.tar

tarファイルメタデータのみを含む1秒未満の細かいアーカイブを作成します。

これで、tarそのアーカイブを反対側にコピーし、メタデータのみを抽出し、ファイルの内容は変更せずに残します。

star -x -meta < /tmp/meta.tar

-Uアーカイブ内のファイルがディスク上のファイルより最新であることを確認するときに2番目の部分を比較しない2018年5月以前の古いバージョンを使用する場合は、adオプションが必要です。starstar

おすすめ記事