Führen Sie das Programm mit Leerzeichen in FilePath ausHallo zusammen,
Derzeit habe ich Probleme mit der Ausführung eines runprogram Befehl mit einem Dateipfad, der ein Leerzeichen enthält:
myPath = "C:\Users\FilePath\Test.py"
myInfo = runprogram(executable("python"), options({myPath}),readfunction("text"));
Dies funktioniert einwandfrei, aber wenn der Dateipfad ein Leerzeichen enthält, wird der Pfad abgeschnitten, sodass die Datei nicht gefunden werden kann:
myPath = "C:\Users\File Path\Test.py"
myInfo = runprogram(executable("python"), options({myPath}),readfunction("text"));Vielleicht kann mir jemand helfen - danke,
DG
SkriptingBetreff: Programm mit Leerzeichen in FilePath ausführenVorheriger Kommentar zur Verwendung von Anführungszeichen: https://community.jmp.com/t5/Discussions/Unable-to-parse-speechmarks-quot-quot-into-powershell-using/mp/245968/highlight/true#M48328
Sie können ein CMD-Fenster (das schwarze DOS-Fenster) verwenden, um zu sehen, wie Windows den Befehl mit Anführungszeichen ausführen möchte:
Verwenden Sie Anführungszeichen um Parameter mit eingebetteten Leerzeichen
Sobald dies funktioniert hat, müssen Sie es in eine JMP-Zeichenfolge einfügen, für die ein Escapezeichen erforderlich ist, da JMP auch Anführungszeichen verwendet. In diesem Beispiel werden die beiden Anführungszeichen einfach mit \! "
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"));Verwenden Sie die Funktion "Schreiben" in JMP, nicht die Funktion "Drucken", die mehr Verwirrung stiftet, indem der gedruckte Text in Anführungszeichen gesetzt wird.
Sie können die Anführungszeichen auch in die Zeichenfolge einfügen, aber die obige JSL ist genau das, was Sie benötigen, wenn Sie den Dateinamen von der Funktion filesInDirectory erhalten ... Sie müssen sie noch hinzufügen. Sie können Anführungszeichen hinzufügen, auch wenn diese nicht benötigt werden. Siehe den Link oben, wenn Sie aus irgendeinem Grund Anführungszeichen in der Mitte des Dateinamens haben.
Betreff: Programm mit Leerzeichen in FilePath ausführenHallo Craige,
Vielen Dank - eigentlich habe ich den Beitrag gesehen, aber es nicht geschafft, ihn anzupassen.
Nochmals vielen Dank, funktioniert perfekt!