rsync: dois pontos nos nomes dos arquivos


23

Além de renomear os arquivos primeiro, como posso rsyncarquivos com dois pontos em seus nomes?


Verifique se você está usando dir/e não dir/*nos argumentos do rsync.
grawity

O problema acontece quando eu rsync a partir de um disco rígido para um cartão de memória flash:rsync: mkstemp "/media/verd/rence/.Using an expressive work: fact or fiction.pdf.RbjlKK" failed: Invalid argument (22) rsync: mkstemp "/media/verd/rence/.What's in a concept: structural foundations for semantic networks.pdf.tLXoZz" failed: Invalid argument (22)
象嘉道

Para futuros leitores, observe também que isso depende do sistema de arquivos: os discos rígidos típicos do Windows com NTFS não podem conter arquivos :em primeiro lugar
phil294

Respostas:


22

Dois pontos são especiais apenas no primeiro componente de diretório de um argumento de linha de comando. Portanto, se você tem o que parece ser um caminho relativo, faça um prefixo ./.

$ mkdir sou:rce
$ rsync -a sou:rce/ de:st/
The source and destination cannot both be remote.
$ rsync -av ./sou:rce/ ./de:st/
sending incremental file list
created directory ./de:st
./

Em um script:

case $source in
  /*) :;;
  *) source=./$source;;
esac
case $dest in
  /*) :;;
  *) dest=./$dest;;
esac
rsync "$source" "$dest"

Obrigado Guilles. O problema acontece quando eu rsync a partir de um disco rígido para um cartão de memória flash:rsync: mkstemp "/media/verd/rence/.Using an expressive work: fact or fiction.pdf.RbjlKK" failed: Invalid argument (22) rsync: mkstemp "/media/verd/rence/.What's in a concept: structural foundations for semantic networks.pdf.tLXoZz" failed: Invalid argument (22)
象嘉道

3
@Kejia 柯嘉: Ah, ok, seu problema é renomear-e-rsync, não passar os dois pontos para rsync. Esta pergunta surgiu antes no site do Ubuntu: Como posso substituir dois pontos quando sincronizo uma chave USB? Infelizmente, ninguém produziu uma resposta satisfatória.
Gilles 'SO- stop be evil'
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.