Contenu | Rechercher | Menus

Annonce

Le forum rencontre en ce moment quelques soucis de charge, il est possible qu'une erreur soit affichée quand vous postez un message, ne rechargez pas la page au risque de poster une seconde fois votre message

Si vous rencontrez des soucis à rester connecté sur le forum (ou si vous avez perdu votre mot de passe) déconnectez-vous et reconnectez-vous depuis cette page, en cochant la case "Me connecter automatiquement lors de mes prochaines visites".

Déjà un an…

#1 Le 16/11/2012, à 23:54

Retour chariot dans un nom de dossier

Bonsoir à tous,

J'ai un petit problème en souhaitant utiliser un script permettant, sous linux, de restaurer des fichiers issus de Time Machine (OSX).
Voici la discussion et le script, pour ceux que cela peut intéresser : http://hints.macworld.com/article.php?s … 3213342356

Voici ma ligne de commande :
/home/david/Modèles/Reccup_Time_Machine/script.bash /media/david/Sauvegarde\ Time\ Machine/.HFS+\ Private\ Directory\ Data\  /home/david/TM /media/david/Sauvegarde\ Time\ Machine/Backups.backupdb/iMac\ de\ David/Latest/Davimac/Users/davimac/Pictures Images

J'ai dans le chemin vers mes sauvegardes un caractère retour chariot dans l'un des dossiers (je l'ai repéré grâce à l'encodage %0D dans Nautilus).
C'est le dossier ".HFS+ Private Directory Data" qui termine par ce retour chariot. D'ailleurs le nom du dossier est sur 2 lignes dans Nautilus smile
Ma question est la suivante : comment puis-je saisir ce caractère dans l'un des arguments du script ?
La complétion propose ^M mais cela ne fonctionne pas, et je souhaiterai éviter de renommer ce dossier pour qu'il soit toujours utilisable sous OSX.

Merci pour votre aide !

David

Hors ligne

#2 Le 17/11/2012, à 00:03

Re : Retour chariot dans un nom de dossier

Salut,
Peut-etre comme ça :

script.bash "fichier avec espaces et retour
a la ligne"

Edit : en entourant le nom du fichier avec des doubles-quotes, il ne faut plus laisser les \ avant les espaces
Re-edit :
Le retour chariot étant à la fin du nom, ça serait comme ça :

script.bash "fichier avec espaces et retour a la ligne
"

Dernière modification par Postmortem (Le 17/11/2012, à 00:24)


Precise Pangolin (64 bits), Athlon64 3800+, ATI Radeon HD4870

Mot' a dit : « Un Hellfest sans Slayer, c'est comme une galette-saucisse sans saucisse ! »

Hors ligne

#3 Le 17/11/2012, à 00:48

Re : Retour chariot dans un nom de dossier

Merci Postmortem pour ta réponse.

Sur quelle touche as-tu appuyé pour avoir ton retour chariot ? Est-ce en fait un script qui en appelle un autre avec dans ce deuxième script un retour chariot fait simplement avec la touche "Enter" ?

Le créateur du script précise qu'il ne faut pas utliser les doubles quotes pour les chemins dans les arguments, mais la tab completion, qui d'aileurs ne fontionne pas chez moi...
C'est d'ailleurs peut-être une solution pour ne pas à avoir à saisir ce caractère...

Hors ligne

#4 Le 17/11/2012, à 01:03

Re : Retour chariot dans un nom de dossier

J'ai appuyé sur..... Entrée !
Vu que qu'on a ouvert les doubles-quotes, Entrée ne termine pas la commande et ne l'exécute pas, ça va seulement à la ligne. Et une fois à la ligne, tu fermes les doubles-quotes.
Une autre solution serait de remplacer :

/media/david/Sauvegarde\ Time\ Machine/.HFS+\ Private\ Directory\ Data\

par :

/media/david/Sauvegarde\ Time\ Machine/.HFS+\ Private\ Directory\ Data*

Edit :
Ou alors par ceci :

/media/david/Sauvegarde\ Time\ Machine/.HFS+\ Private\ Directory\ Data$'\r'

Dernière modification par Postmortem (Le 17/11/2012, à 01:23)


Precise Pangolin (64 bits), Athlon64 3800+, ATI Radeon HD4870

Mot' a dit : « Un Hellfest sans Slayer, c'est comme une galette-saucisse sans saucisse ! »

Hors ligne

#5 Le 21/11/2012, à 11:21

Re : Retour chariot dans un nom de dossier

Bonjour,

Merci Postmortem pour ton message.
Après plusieurs tests avec ces commandes et d'autres trouvées sur internet, le script ne fonctionne toujours pas. L'appel se fait bien mais la récursivité n'aboutie pas, et cela sans message d'erreur.
J'ai donc dû connecter le disque sur un autre mac pour récupérer mes fichiers sauvegardés.
Quelle idée de mettre un retour chariot dans un nom de dossier smile Merci Apple !

Hors ligne

#6 Le 21/11/2012, à 12:32

Re : Retour chariot dans un nom de dossier

Bonjour,
Tu peux éventuellement faire un lien (avec un nom normal) sur le dossier qui contient le '\r', ce qui te permettra de l'appeler par l'un ou l'autre nom.

Hors ligne

#7 Le 21/11/2012, à 16:57

Re : Retour chariot dans un nom de dossier

@Postmortem : appuyer sur entrée fera une nouvelle ligne (\n), pas un retour chariot (\r)

@auburdav : que te donne un :

for f in * ; do echo "$f".aaaaa ; done

le nom est il écrasé à la fin par le « aaaaa » ?


GUL les mardis à Bordeaux : Giroll
Hide in your shell, scripts & astuces :  applications dans un tunnelsmart wgettrouver des pdfinstall. auto de paquetssauvegarde auto♥ awk
  ⃛ɹǝsn xnuᴉꞁ uʍop-ǝpᴉsdnGMT-4

Hors ligne

#8 Le 22/11/2012, à 00:43

Re : Retour chariot dans un nom de dossier

nesthib a écrit :

@Postmortem : appuyer sur entrée fera une nouvelle ligne (\n), pas un retour chariot (\r)

@auburdav : que te donne un :

for f in * ; do echo "$f".aaaaa ; done

le nom est il écrasé à la fin par le « aaaaa » ?

Ouai, me suis emmêlé les pinceaux !
Petite question, le ^M, c'est équivalent au \r ?


Precise Pangolin (64 bits), Athlon64 3800+, ATI Radeon HD4870

Mot' a dit : « Un Hellfest sans Slayer, c'est comme une galette-saucisse sans saucisse ! »

Hors ligne

#9 Le 23/11/2012, à 18:08

Re : Retour chariot dans un nom de dossier

Postmortem a écrit :

Petite question, le ^M, c'est équivalent au \r ?

Oui, c'est la même chose : char(13).

Hors ligne

#10 Le 23/11/2012, à 18:41

Re : Retour chariot dans un nom de dossier

Merki aduxas !


Precise Pangolin (64 bits), Athlon64 3800+, ATI Radeon HD4870

Mot' a dit : « Un Hellfest sans Slayer, c'est comme une galette-saucisse sans saucisse ! »

Hors ligne

Haut de page ↑