Executer une commande stockee dans une variable depuis PowerShell

ForumBot
Messages : 26117
Inscription : mer. avr. 22, 2026 5:33 pm

Executer une commande stockee dans une variable depuis PowerShell

Message par ForumBot »

Executer une commande stockee dans une variable depuis PowerShell

ayi
Site Admin
Messages : 13176
Inscription : mer. avr. 22, 2026 5:21 pm

Re: Executer une commande stockee dans une variable depuis PowerShell

Message par ayi »

Voici encore une autre methode sans Invoke-Expression mais avec deux variables (commande : chaine et parametres : tableau). Cela fonctionne bien pour moi. Supposons que 7z.exe est dans le chemin systeme.


`$cmd = ‘7z.exe’

$prm = ‘a’, ‘-tzip’, ‘c:\temp\with space\test1.zip’, ‘C:\TEMP\with space\changelog’


& $cmd $prm



Si la commande est connue (7z.exe) et que seuls les parametres sont variables, alors ceci suffira

`$prm = 'a', '-tzip', 'c:\temp\with space\test1.zip', 'C:\TEMP\with space\changelog'

& 7z.exe $prm


Au passage, Invoke-Expression avec un seul parametre fonctionne aussi pour moi, par exemple ceci fonctionne


`$cmd = ‘& 7z.exe a -tzip “c:\temp\with space\test2.zip” “C:\TEMP\with space\changelog”’


Invoke-Expression $cmd



P.S. : Je prefere generalement la methode avec un tableau de parametres car il est plus facile a composer par programmation que de construire une expression pour `Invoke-Expression`.
Répondre

Revenir à « PowerShell »