cp -x(ファイルシステムに保持)の目的は何ですか?

cp -x(ファイルシステムに保持)の目的は何ですか?

同じファイルシステムを維持するには、同じファイルシステムへの出力パスのみを指定することはできませんか?

それとも、誤って現在のファイルシステムを離れることを防ぐために?

答え1

ファイルがコピーされる場所を制限します。~から、コピーされた場所ではありません。再帰コピーがサブディレクトリにどのようにダウンするかを制御するのに役立ちますcp。だから

cp -xr / blah

マウントされた他のファイルシステムではなく、ルートファイルシステムのみがコピーされます。

バラよりcp -x出荷書類ビーチ(違いは微妙ですが)。

答え2

フラグ-xの宛先はcpGNU 拡張です。このオプションは個々のファイルをコピーしても効果はありませんが、ファイル階層全体をコピーすると、この-xオプションはソースソースと同じファイルシステムにないファイルとディレクトリをコピーするのを防ぎます。

たとえば、/usrマウントポイントとファイルシステムの下の階層の/usr/local使用はcp -xR /usr /some-destコピーされません/usr/local

そして(このフラグが呼び出されます)-xなど、同様の意味を持つ他のユーティリティオプションがあります。dufind-xdevfindrsync

関連情報