rsync --excludeおよび--exclude-fromが機能しない


0

私はスクリプトでコマンドを使用しており、これを数年間使用しました。昨年はスクリプトを使用しませんでしたが、今日は再度実行しました。しかし、rsyncからファイルを除外するのに突然問題が発生します。

私はUbuntu 18.04(rsyncバージョン3.1.2)を使用しています。次のコマンドを実行します。

rsync -exclude-from='sync_exclude.txt' -azvv -e ssh '.' root@146.xx.xx.xx:~/wp

sync_exclude.txtファイルは次のようになります。

$ cat sync_exclude.txt
.idea
.git
.gitignore
.DS_Store
sync_exclude.txt
ansible/*
.env

しかし、驚いたことに、rsyncはこの除外ファイル内のすべてのものも同期するようになりました。

私は次のような他のバリエーションを試しました

rsync -exclude=.git/ -azvv -e ssh '.' root@146.xx.xx.xx:~/wp
rsync -exclude=".git/" -azvv -e ssh '.' root@146.xx.xx.xx:~/wp
rsync -exclude=/.git/ -azvv -e ssh '.' root@146.xx.xx.xx:~/wp
rsync -exclude=/.git/* -azvv -e ssh '.' root@146.xx.xx.xx:~/wp
rsync -exclude /.git/ -azvv -e ssh '.' root@146.xx.xx.xx:~/wp
rsync -exclude /.git/* -azvv -e ssh '.' root@146.xx.xx.xx:~/wp
rsync -exclude="/.git/*" -azvv -e ssh '.' root@146.xx.xx.xx:~/wp
rsync -exclude "/.git/*" -azvv -e ssh '.' root@146.xx.xx.xx:~/wp
rsync -exclude={.git/,"ansible/*"} -azvv -e ssh '.' root@146.xx.xx.xx:~/wp
rsync -exclude {.git/,"ansible/*"} -azvv -e ssh '.' root@146.xx.xx.xx:~/wp
etc.

しかし、それらのいずれも.git/またはansible/フォルダーを除外しません。MacOSでも試しましたが、同じ問題があります。

私は頭を壁にぶつけて、なぜこれが突然機能しなくなったのか。

誰かが私の不幸から私を助けることができますか?

回答:


1

これは単なるタイプミスかもしれませんが、--exclude-from代わりに使用する必要があります-exclude-from(ダブルハイフンに注意してください)。


同じ--exclude
PiedPiper
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.