不要なファイルを削除しながらハードリンクにコピーするLinuxコマンドはありますか?

不要なファイルを削除しながらハードリンクにコピーするLinuxコマンドはありますか?

私は次のような行動を探しています。

cp -al

ファイルの内容をコピーするのではなく、ハードリンクのみを作成します。

rsync -a --delete

ソースに存在しないファイルをターゲットから削除します。ハードリンク関連のオプションを探してみてはrsyncいけないようです。ただハードリンクを作成します。

Linuxにそのようなコマンドがありますか?

ベストアンサー1

「src」と「dest」というディレクトリをそれぞれコピーのソースと宛先として使用するとします。次のコマンドパイプラインを使用して、ソースに存在しないターゲットファイルを削除できます。

find src/* dest/* |cut -d'/' -f2- |sort |uniq -u |xargs printf "dest/%s\n" |xargs rm -f

ファイル名にスペースまたはが含まれていない場合にのみ機能します\'"

おすすめ記事