2017-05-31 6 views
0

Je peux obtenir du texte en clair pour apparaître, je peux d'abord obtenir une variable puis du texte à afficher - cependant, j'essaie d'obtenir par exemple, une étiquette, puis la variable:http POST invoke-WebRequest Paramètres ajoutant du texte

Computer Name: $env:computername 

Retourne les erreurs.

La commande batch J'utilise est:

powershell -Command "& {Invoke-WebRequest -Uri https://script.google.com/macros/s//exec -Method POST -Body text="$env:computername, $env:os, $env:username, $env:thisip"}"

Je voudrais étiqueter simplement chaque variable au sein du commandement, tels que:

powershell -Command "& {Invoke-WebRequest -Uri https://script.google.com/macros/s//exec -Method POST -Body text="ComputerName: $env:computername, OS: $env:os, UserName: $env:username, IP: $env:thisip"}"

Cependant, je continue d'avoir des erreurs concernant les paramètres de position.

Toute aide est appréciée!

+2

On dirait que votre problème est lié à des guillemets simples entre guillemets simples. Vous devez double-citer les guillemets simples intérieurs ou la chaîne est interprétée comme étant terminée mid-string. – thepip3r

+0

duh. Merci pour l'aide! Tellement facile de rater ces choses! Appréciez l'aide! – OblongMedulla

Répondre

0

@ thepip3r a souligné à juste titre:

On dirait que votre problème est lié à des guillemets simples dans un seul entre guillemets. Vous devez faire une double citation des guillemets simples intérieurs ou la chaîne est interprétée comme étant terminée à mi-chaîne.

i changé ci-dessous et cela a fonctionné:

powershell -Command "& {Invoke-WebRequest -Uri https://script.google.com/macros/s//exec -Method POST -Body text='ComputerName: $env:computername, OS: $env:os, UserName: $env:username, IP: $env:thisip'}"