Eseguire il programma con spazio in FilePathCiao a tutti,
attualmente sto lottando con l'esecuzione di un file eseguire il programma comando con un percorso file contenente uno spazio char:
myPath = "C:\Users\FilePath\Test.py"
myInfo = runprogram(executable("python"), options({myPath}),readfunction("text"));
Funziona perfettamente, ma quando il percorso del file contiene uno spazio, il percorso viene tagliato, quindi il file non può essere trovato:
myPath = "C:\Users\File Path\Test.py"
myInfo = runprogram(executable("python"), options({myPath}),readfunction("text"));Forse qualcuno può aiutarmi - grazie,
DG
ScriptingRi: Runprogram with Space Char in FilePathCommento precedente sull'uso delle virgolette: https://community.jmp.com/t5/Discussions/Unable-to-parse-speechmarks-quot-quot-into-powershell-using/mp/245968/highlight/true#M48328
È possibile utilizzare una finestra CMD (la finestra DOS box nera) per vedere come Windows vuole che il comando venga eseguito tra virgolette:
Usa le virgolette intorno ai parametri con spazi incorporati
Una volta che hai funzionato, devi portarlo in una stringa JMP, che richiede una sorta di escape poiché anche JMP utilizza le virgolette. Per questo esempio, esegui l'escape delle due virgolette usando \! "
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"));Utilizzare la funzione "scrivi" in JMP, non la funzione "stampa" che aggiunge ulteriore confusione racchiudendo il testo stampato tra virgolette.
Puoi anche inserire le virgolette nella stringa, ma il JSL sopra è ciò di cui hai bisogno se ottieni il nome del file da qualcosa come la funzione filesInDirectory ... devi ancora aggiungerli. Puoi aggiungere virgolette anche se non sono necessarie. Se per qualche motivo sono presenti virgolette al centro del nome del file, vedere il collegamento in alto.
Ri: Runprogram with Space Char in FilePathCiao Craige,
grazie mille - in realtà ho visto il post ma non sono riuscito ad adattarlo.
Grazie ancora, funziona perfettamente!