rsync: deux points dans les noms de fichiers


23

Autre que de renommer les fichiers en premier, comment puis-je les rsyncfichiers qui peuvent avoir des deux-points dans leurs noms?


Assurez-vous que vous utilisez dir/et non dir/*dans les arguments rsync.
grawity

Le problème se produit lorsque je rsync d'un disque dur vers une clé USB: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)
象 嘉 道

Pour les futurs lecteurs, veuillez également noter que cela dépend du système de fichiers: les disques durs typiques de Windows avec NTFS ne peuvent pas contenir de fichiers avec :en premier lieu
phil294

Réponses:


22

Les deux-points ne sont spéciaux que dans le premier composant de répertoire d'un argument de ligne de commande. Donc, si vous avez ce qui ressemble à un chemin relatif, ajoutez le préfixe ./.

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

Dans un script:

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

Merci, Guilles. Le problème se produit lorsque je rsync d'un disque dur vers une clé USB: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, votre problème est de renommer et rsync, pas de passer les deux-points à rsync. Cette question est apparue auparavant sur le site Ubuntu: comment puis-je remplacer les deux-points lorsque je rsync sur une clé USB? Malheureusement, personne n'a produit de réponse satisfaisante.
Gilles 'SO- arrête d'être méchant'
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.