Exécuter le programme avec un espace dans FilePathBonjour à tous,
actuellement, je suis aux prises avec l'exécution d'un exécuter de programme commande avec un chemin de fichier contenant un caractère d'espace:
myPath = "C:\Users\FilePath\Test.py"
myInfo = runprogram(executable("python"), options({myPath}),readfunction("text"));
Cela fonctionne parfaitement, mais lorsque le chemin du fichier contient un espace - le chemin est coupé, donc le fichier est introuvable:
myPath = "C:\Users\File Path\Test.py"
myInfo = runprogram(executable("python"), options({myPath}),readfunction("text"));Peut-être que quelqu'un peut m'aider - merci,
DG
ScriptingRe: Runprogram avec Space Char dans FilePathCommentaire précédent sur l'utilisation des guillemets: https://community.jmp.com/t5/Discussions/Unable-to-parse-speechmarks-quot-quot-into-powershell-using/mp/245968/highlight/true#M48328
Vous pouvez utiliser une fenêtre CMD (la fenêtre de la boîte DOS noire) pour voir comment Windows veut que la commande soit exécutée avec des guillemets:
Utilisez des guillemets autour des paramètres avec des espaces incorporés
Une fois que cela fonctionne, vous devez l'amener dans une chaîne JMP, ce qui nécessite une sorte d'échappatoire puisque JMP utilise également des guillemets. Pour cet exemple, échappez simplement les deux guillemets en utilisant \! "
filename = "c:\Program Files\Common Files\System\Ole DB\oledbjvs.inc";
write("filename = ", filename); // no quotation marks
txt = runprogram(executable("python"), options({
"\!"" || filename || "\!""
}),readfunction("text"));Utilisez la fonction "écriture" dans JMP, pas la fonction "impression" qui ajoute plus de confusion en entourant le texte imprimé avec des guillemets.
Vous pouvez également insérer les guillemets dans la chaîne, mais le JSL ci-dessus est ce dont vous avez besoin si vous obtenez le nom de fichier à partir de quelque chose comme la fonction filesInDirectory ... vous devez toujours les ajouter. Vous pouvez ajouter des guillemets même s'ils ne sont pas nécessaires. Voir le lien en haut si vous avez des guillemets au milieu du nom de fichier pour une raison quelconque.
Re: Runprogram avec Space Char dans FilePathSalut Craige,
merci beaucoup - en fait j'ai vu le post mais je n'ai pas réussi à l'adapter.
Merci encore, fonctionne parfaitement!