Para onde vão os arquivos sincronizados novamente com um host?

Para onde vão os arquivos sincronizados novamente com um host?

Eu acidentalmente sincronizei novamente .thunderbirdem user@hostvez de to user@host:/home/user.

Onde é .thunderbirdagora? Existe uma boa maneira de procurar a pasta?

Responder1

Está no diretório onde você executou o comando:

$ touch foo
$ ls -l foo bar@baz
ls: cannot access 'bar@baz': No such file or directory
-rw-rw-r-- 1 muru muru 0 May 30 16:53 foo
$ rsync -aP foo bar@baz
sending incremental file list
foo
              0 100%    0.00kB/s    0:00:00 (xfr#1, to-chk=0/1)
$ ls -l foo bar
-rw-rw-r-- 1 muru muru 0 May 30 16:53 bar@baz
-rw-rw-r-- 1 muru muru 0 May 30 16:53 foo

Se você fez isso rsync .thunderbird user@host:e não rsync .thunderbird user@host(observe o :), então o diretório foi copiado para o diretório inicial de useron host(portanto, /home/usernormalmente seria redundante em user@host:/home/user). Sem o :, o segundo argumento é apenas o caminho para um diretório de destino no sistema local.

O mesmo se aplica a scp.

Observe que isso rsyncnão exclui os arquivos de origem, a menos que você solicite. Então .thunderbirdainda está onde estava e uma nova cópia é feita onde quer que tenha sido copiada.

Observe também que ele rsynctem um comportamento diferente com base no fato de o diretório de origem ter um arquivo /. Esses dois são diferentes:

rsync -aP .thunderbird somewhere
rsync -aP .thunderbird/ somewhere

No primeiro caso, o .thunderbirddiretório é copiado somewhere, mas no segundo caso, oconteúdode .thunderbirdsão copiados (então você não verá somewhere/.thunderbird, mas se houvesse um .thunderbird/foo, você veria somewhere/fooem vez de somewhere/.thunderbird/foo).

informação relacionada