
Básicamente, quiero pasar comandos <command>
, como si se ejecutaran dentro de sesiones de PowerShell PS >
, para que los invoqueCreateProcess
powershell -Command <command>
Lo anterior no funciona en todos los casos. Por ejemplo esto no funciona
powershell -Command gci "C:\Program Files"
Pero esto funciona
powershell -Command choco -v
Respuesta1
Verifique el comando efectivo pasado al powershell
uso de {}
la sintaxis de scriptblock de la siguiente manera:
powershell -Command {gci "C:\Program Files"}
gci C:\Program Files
Parece que el cmd
intérpretecome doble comillas. Por lo tanto, es necesarioescaparel espacio dentro de la C:\Program Files
cadena, por ejemplo, de la siguiente manera:
powershell -Command gci "C:\Program` Files" # using backtick
o usando comillas (cualquiera de las siguientes líneas de comando debería funcionar):
powershell -Command gci """C:\Program Files""" # inner double quotes
powershell -Command gci "'C:\Program Files'" # inner single quotes
powershell -Command gci 'C:\Program Files' # single quotes