Le jeudi 19 janvier, Christophe Lyon a écrit :
> [...]
> dira/toto
> dirb/toto
> sous /tmp [...]
> rsync -aR --exclude=dirb --exclude-deleted dira dirb /tmp
> Et j'ai toujours la meme chose sous /tmp.
Deux extraits de man rsync :
--delete-excluded
[...]. See --delete (which is implied)
for more details on file-deletion. [...]
--delete
This tells rsync to delete extraneous files from the receiving
side (ones that aren't on the sending side), but only for the
directories that are being synchronized. [...]
Je crois la réponse est dans cette dernière précision « only for the
directories that are being synchronized. » À mon avis rsync a considéré
que dans ton cas, tu ne synchronisais pas dirb, donc il n'était pas
concerné par --delete-excluded.
Une petite expérience : je mets dir[ab] dans source et je demande de
synchroniser source/ (c.-à-d. le contenu de source et non le répertoire
lui-même) :
$ tree --noreport
.
|-- source
| |-- dira
| | `-- toto
| `-- dirb
| `-- toto
`-- tmp
$ rsync -a source/ ./tmp
$ tree --noreport
.
|-- source
| |-- dira
| | `-- toto
| `-- dirb
| `-- toto
`-- tmp
|-- dira
| `-- toto
`-- dirb
`-- toto
$ rsync -a --exclude=dirb --delete-excluded source/ ./tmp
$ tree --noreport
.
|-- source
| |-- dira
| | `-- toto
| `-- dirb
| `-- toto
`-- tmp
`-- dira
`-- toto
Edgar.
--
Edgar Bonet Maison : 04 76 21 29 16 Bureau : 04 76 88 10 96
3 rue Jean Prévost Mobile : 06 77 19 79 39 Fax : 04 76 88 11 91
38000 Grenoble guilde@??? www.edgar-bonet.org