特定のファイルサイズ制限でディレクトリ構造全体をコピーするには? [コピー]

特定のファイルサイズ制限でディレクトリ構造全体をコピーするには? [コピー]

何らかの理由でデータ複製を実行する必要があります。

その中に巨大なディレクトリの全体構造をコピーする必要がありますが、多くの巨大な一時ファイルの複製を避けたいので、1MBより小さいファイル(階層構造が変更されていない状態)だけコピーしたいと思います。

これを達成するには、どのユーティリティまたはコマンドを使用する必要がありますか?

zipコマンドはこの目標を直接達成できますか?

ベストアンサー1

rsync には、特定のサイズを超えるファイルがあるディレクトリから別のディレクトリにコピーされないように除外する --max-size オプションがあります。マニュアルページから。

--最大サイズ=サイズ
    これは、指定されたサイズより大きいファイルを転送しないようにrsyncに指示します。 SIZE値には、サイズの乗数を表す文字列を接尾辞で付けることができ、10進値にすることができます(例:lq--max-size = 1.5mrq)。
このオプションは除外ルールではなく転送ルールなので、影響はありません。
    データはファイルのリストに入り、削除には影響しません。単に受信者が転送を要求するファイルを制限します。
サフィックスは次のとおりです。 lqKrq(またはlqKiBrq)はキロバイト(1024)です。
    lqMrq(またはlqMiBrq)はメガバイト(1024 * 1024)、lqGrq(またはlqGiBrq)はギガバイト(1024 * 1024 * 1024)です。乗数を1024ではなく1000に設定するには、lqKBrq、lqMBrq、またはlqGBrqを使用してください。 (注:すべての値は小文字でも許可されています。)最後に、サフィックスがlq + 1rqまたはlq-1rqで終わると、その値は表示された方向に1バイトオフセットされます。
例: --max-size=1.5mb-1 は 1499999 バイトで、 --max-size=2g+1 は
    2147483649バイト。

おすすめ記事