同様の2台のコンピュータを同期し、いくつかのファイルだけを更新したいと思います。そのため、Unisonを実行し、別のパスにあるファイルのリストを除くすべてを無視したいと思います。
それは次のとおりです。
# /usr/bin/unison-gtk /home/ ssh://[email protected]:22//home/ -ignore "Name *" -ignorenot "Name {config/text.cfg, Pictures/test.jpg, Desktop/test.mp3"
あるいは、ルートディレクトリから始める方が良いでしょう。
# /usr/bin/unison-gtk / ssh://[email protected]:22// -ignore "Name *" -ignorenot "Name {/home/config/text.cfg, /home/Pictures/test.jpg, /usr/local/bin/test.sh"
最初の無視は、他のすべてを除いて、ignorenotがそれを捕捉するのを防ぐことです。役に立ちましたか?誰でも助けることができますか?私は私に役立つものが何も見つかりませんでした。
ベストアンサー1
-path
代わりに一貫したオプションを試しましたか-ignore
? ~から統合マニュアルおよびリファレンスガイド部分すべてのファイルにUnisonを使用する
Unisonに特定の実行時に一部のファイルとサブディレクトリのみを同期させるように指示します。これは、コマンドラインで-pathスイッチを使用して実行できます。 ... -path オプションは、複数のファイルまたはサブディレクトリを同期するのに必要な数だけ使用できます。
以下は簡単な実際の例です。
local
ディレクトリと作成remote
(remote
この場合、ディレクトリは実際のリモートディレクトリを置き換えます)。
root@ubuntu:~# mkdir local remote
- ディレクトリに9つのファイルを作成します
local
。
root@ubuntu:~# for i in $(seq 9); do uuidgen > local/${i}.txt ; done
root@ubuntu:~# ls local
1.txt 2.txt 3.txt 4.txt 5.txt 6.txt 7.txt 8.txt 9.txt
- ファイルを同期するために使用されますが、同期は名前が、およびである
unison
ファイルに制限されます。1.txt
2.txt
3.txt
root@ubuntu:~# unison -auto -batch local/ remote/ -path 1.txt -path 2.txt -path 3.txt
Contacting server...
Looking for changes
...
Reconciling changes
file ----> 1.txt
file ----> 2.txt
file ----> 3.txt
...
remote
ディレクトリにこれらのファイルのみが含まれていることを確認してください。
root@ubuntu:~# ls remote/
1.txt 2.txt 3.txt
内容が変わると、状況はさらに面白くなります。
- ディレクトリに同じファイルを作成します
remote
。これにより、同期されたファイルが更新され、同期されていないファイルの新しいファイルが作成されます。
root@ubuntu:~# for i in $(seq 9); do uuidgen > remote/${i}.txt ; done
unison
ディレクトリを再同期するために使用されます。
root@ubuntu:~# unison -auto -batch local/ remote/ -path 1.txt -path 2.txt -path 3.txt
Contacting server...
Looking for changes
Reconciling changes
<---- changed 1.txt
<---- changed 2.txt
<---- changed 3.txt
...
- 同期されたファイル(たとえば
1.txt
)の内容は、両方のディレクトリで一致します。同期されていないファイル(例9.txt
:)には他のコンテンツが含まれます。
root@ubuntu:~# cat {local,remote}/1.txt
7317d9ef-9747-43ae-9f4c-347fc4134e65
7317d9ef-9747-43ae-9f4c-347fc4134e65
root@ubuntu:~# cat {local,remote}/9.txt
76654fcf-d0b2-4788-8a84-b765c9a41cc3
f5db8eb3-4300-463a-9d49-fcb14afcae12