2013-05-09 17 views
5

Sto tentando di chiamare uno script PowerShell in cmd.exe e lo script si trova in una posizione simile a questa: c: Dati \ foo - bar \ location-1 \ ShellScript.ps1Esecuzione di uno script PowerShell in CMD.EXE da una posizione con "Caratteri non validi nel percorso"

Quando chiamo questo script, ho provato a utilizzare le virgolette singole e doppie lungo il percorso senza fortuna.

PowerShell.exe -File "c:\Data\foo - bar\location-1\ShellScript.ps1" Arg1 Arg2 

Da quello che ho letto ho pensato che quanto sopra avrebbe funzionato, ma questo non ha funzionato né ha virgolette singole.

Apprezzo qualsiasi idea.

Grazie * Modifica * Mistype sul mio percorso di esempio. Scusate.

+1

Come minimo, è necessario mettere in mancante \ così: C: \ Data \ foo - bar \ posizione- 1 \ ShellScript.ps1 – EBGreen

+0

Mi dispiace. Era un errore nel postare. Il percorso con cui sto lavorando nel mio codice è corretto. –

+0

È possibile che sia qualcosa nello script stesso. Fai lo stesso percorso con uno script di test che fa solo un Out-Host o qualcosa del genere. – EBGreen

risposta

10

Una soluzione è quella di spostare a PowerShell v3 in cui questo funziona bene:

PS> powershell.exe -file 'C:\temp\foo - bar\location-1\foo.ps1' arg1 arg2 
made it!, args are arg1, arg2 

Se avete bisogno di stare su V2 provare sfuggire gli spazi ad esempio:

PS> powershell.exe -file "C:\temp\foo` -` bar\location-1\foo.ps1" arg1 arg2 

Da cmd.exe, questo dovrebbe funzionare:

C:\> PowerShell.exe -Command "& {& 'c:\Data\foo - bar\location-1\ShellScript.ps1' Arg1 Arg2}" 
+0

Quello è dalla shell "PowerShell" la domanda riguardava l'esecuzione di script PowerShell direttamente da cmd – rob

+0

@rob Punto buono. Verifica se l'aggiornamento alla mia risposta lo aiuta. –

+0

sì che funziona, si ottiene il punto indietro – rob

1
PowerShell.exe -File "c:\Data\foo - bar\location-1\ShellScript.ps1" 

dovrebbero essere preceduti

PowerShell.exe "& ""c:\Data\foo - bar\location-1\ShellScript.ps1""" 

sì che è davvero un totale di 6 doppi apici

Problemi correlati