J'ai un programme que j'utilise pour écrire du xml avec des variables, et il passe par AppleScript et bash pour former le xml final. Cependant, l'une de mes variables commence généralement par "024", "054", ou d'autres codes à trois chiffres qui, associés au "\", forment un caractère octal, comme "," pour " \054 ". Une fois qu'elles sont passées dans bash, elles sont remplacées par ces caractères octaux. Ces variables doivent rester telles qu'elles sont, car elles font partie d'un chemin de fichier dont le xml est extrait. Malheureusement, je ne peux pas changer ces variables parce qu'elles sont liées à beaucoup d'autres choses qui fonctionnent correctement, et les backslashes sont obligatoires aussi. Je veux savoir s'il existe un moyen d'empêcher AppleScript de mettre en œuvre l'encodage octal sur ce script lors de son passage. Un collègue a recommandé d'utiliser iconv, que j'ai essayé sans succès, en partie parce que je ne suis pas sûr de savoir comment l'utiliser correctement. Voici l'AppleScript pour référence :
do shell script "echo \"<?xml version=\\\"1.0\\\" encoding=\\\"UTF-8\\\"?> <scratch project=\\\"TEST\\\"> <file>W:\\Sequences\\087_TLD_TL_Taking_The_Lead\\Shots\\TLD0640\\Versions\\MOV\\TLD0640_v0173.mov\\</file> </scratch>\" > ~/Desktop/Test.xml"
Et le résultat :
<?xml version="1.0" encoding="UTF-8"?> <scratch project="TEST"> <file>W:\Sequences87_TLD_TL_Taking_The_Lead\Shots\TLD0640\Versions\MOV\TLD0640_v0173.mov\</file> </scratch>
Merci pour votre aide !
Edit : merci Gordon Davisson pour avoir rendu le code visible, et mis à jour les codes au strict minimum pour reproduire la question.