Wie man ein Programm mit Leerzeichen im Pfad ausführtLiebe Community,
Ich möchte unter Windows 10 mit JMP Dateien im aktuellen Verzeichnis zippen.
Ich verwende daher run program() und cmd oder powershell.
Aber bei OneDrive sind Leerzeichen in meinem Pfad. Wie kann ich das beheben?
Ich habe Folgendes in der Benutzergruppe gefunden: https://community.jmp.com/t5/Discussions/Open-file-in-excel-with-whitespace-in-filename/mp/911999?search-action-id=96030372702&search-result-uid=911999 , aber das hat mir nicht weitergeholfen.
Danke!
Names Default To Here( 1 );
base_path = Get Default Directory(); // doesn't work
base_path = "C:\Users\"; // works
Show( base_path );
// e.g. base_path = "/C:/Users/user/OneDrive - Documents/";
// how to mask space in path??
command = Eval Insert( "dir ^base_path^" );
// command = eval insert("\[dir "^base_path^"]\"); // doesn't work
Show( command );
RP = Run Program(
Executable( "cmd.exe" ),
Options( Insert( {"/a", "/q", "/c"}, command ) ),
// ReadFunction( Function( {this}, Write( this << read ) ) )
readfunction( "Text" )
);
Automatisierung und SkripterstellungBetreff: Wie man ein Programm mit Leerzeichen im Pfad ausführtDas Hinzufügen von Anführungszeichen um den Pfad sollte funktionieren.
Names Default To Here(1);
base_path = "C:\Program Files\"; // works
Show(base_path);
command = Eval Insert("dir \!"^base_path^\!"");
Show(command);
RP = Run Program(
Executable("cmd.exe"),
Options(Insert({"/a", "/q", "/c"}, command)),
// ReadFunction( Function( {this}, Write( this << read ) ) )
readfunction("Text")
);
Betreff: Wie man ein Programm mit Leerzeichen im Pfad ausführtHallo Jarmo, danke, du hast Recht, ich hatte auch ein Problem mit dem Backslash am Anfang.
Names Default To Here( 1 );
base_path = "C:\Program Files\"; // works
base_path = Get Default Directory();
// starting backslash makes problems, needs to be removed
// "/C:/Users/
<USER>
/OneDrive - Documents/" base_path = Substr( base_path, 2, Length( base_path ) ); command = Eval Insert( "dir \!"^base_path^\!"" ); Show( command ); RP = Run Program( Executable( "cmd.exe" ), Options( Insert( {"/a", "/q", "/c"}, command ) ), // ReadFunction( Function( {this}, Write( this << read ) ) ) readfunction( "Text" ) );
</USER>
Betreff: Wie man ein Programm mit Leerzeichen im Pfad ausführtIch würde Convert File Path() mit dem Argument "windows" verwenden, um den ersten Backslash zu entfernen.
Names Default To Here(1);
base_path = Get Default Directory();
base_path_w = Convert File Path(base_path, "windows"); // "C:\Users\
<USERNAME>
\Documents\"
</USERNAME>