たとえば、説明するのが最善です。
ソースディレクトリ:
- ファイル-a-1.txt
- ファイル-b-1.txt
ターゲットディレクトリ:
- ファイル-a-2.txt
予想される結果:
- ファイル-a-2.txt
- ファイル-b-1.txt
ファイルがソースディレクトリからターゲットディレクトリに移動され、ターゲットディレクトリにファイル名と部分的に一致するファイルがない場合にのみ、ソースディレクトリ内のすべてのファイルがターゲットディレクトリに移動されます。
答え1
解決策:
宛先ディレクトリのファイルの一覧表示
sedを使用してワイルドカード一致を置き換える
rsyncによるパイプ
--exclude-from
find target_dir | sed -r 's/\.\/(.+?)-.*/\1*/' | rsync --verbose --ignore-existing --exclude-from - src_dir/* target_dir