私は次のような行動を探しています。
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
ファイル名にスペースまたはが含まれていない場合にのみ機能します\'"
。