Ho uno script di shell che voglio eseguire questa linea:Come includere il carattere pipe in un argomento in un file batch da uno script bash?
qtvars.bat vsstart "qt.sln" /BUILD "Debug|Win32"
questo funziona bene (anche se ho dovuto modificare EDIT: Questo non funziona neanche, se lo digito in bash. Precedentemente, stavo scrivendo in qtvars.bat
, ma non è questo il punto). Il problema è che voglio che il comando si esegua in una variabile:cmd.exe
, cosa che non ho fatto per un confronto equo.
command="qtvars.bat"
args="vsstart"
$command $args "qt.sln" /BUILD "Debug|Win32"
Ora soffoca sul tubo! Ottengo questo messaggio:
'Win32' is not recognized as an internal or external command,
operable program or batch file.
Ho provato un po 'di forme di sfuggire le virgolette e/o tubi, tutti senza alcun risultato. È interessante notare, funziona quando si tratta di un eseguibile, piuttosto che un file batch, ad es .:
command="devenv.exe"
args=""
$command $args "qt.sln" /BUILD "Debug|Win32"
Grazie per tutte le idee.
Provato quelli. Lo ha fatto di nuovo solo adesso per essere sicuro. Risultano nello stesso errore, anche se a volte 'Win32' diventa 'Win32 \ ""' nel messaggio di errore. – Owen
prova a impostare il comando su "cmd.exe qtvars.bat" – vladr