rsync: due punti nei nomi dei file


23

Oltre a rinominare prima i file, come posso i rsyncfile che possono avere due punti nei loro nomi?


Assicurati di utilizzare dir/e non dir/*negli argomenti rsync.
Grawity

Il problema si verifica quando eseguo la sincronizzazione da un disco rigido a una memory stick 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)
象 嘉 道

Per i lettori futuri, si noti anche che questo dipende dal filesystem: i dischi rigidi tipici di Windows con NTFS non possono contenere file con :in primo luogo
phil294

Risposte:


22

I due punti sono speciali solo nel primo componente di directory di un argomento della riga di comando. Quindi, se hai quello che sembra un percorso relativo, anteponi ./.

$ 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
./

In uno script:

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

Grazie, Guilles. Il problema si verifica quando eseguo la sincronizzazione da un disco rigido a una memory stick 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, il tuo problema è rinominare e sincronizzare, non passare i due punti a rsync. Questa domanda è emersa in precedenza sul sito Ubuntu: come posso sostituire i due punti quando eseguo la sincronizzazione su una chiave USB? Sfortunatamente nessuno ha prodotto una risposta soddisfacente.
Gilles 'SO- smetti di essere malvagio' il
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.