Question Parametres

Plus d'informations
il y a 9 ans 9 mois #22114 par Toper
Parametres a été créé par Toper
Bonjour,
lorsque je veux mettre des paramètres dans mon script, je fais comme ceci:
[code:1]
param(
$param1 = (get-content c:\temp),
$param2 = (test-path \"c:\temp\"),
$param3 = (send-email ......)
)
if(-not($param2)) {$param3}
[/code:1]
Mais lorsque j'exécute mon script, il \"exécute\" les paramètres, ce qui a pour effet par exemple de m'envoyer un mail (param3) alors que le résultat du \"if\" ne devrait pas donner lieu à l'envoi du mail (c:\temp existe bien).
Que fais-je de mal (car l'erreur est en face de l'écran :)) ?

Message édité par: gregmurf, à: 5/08/16 14:06

Message édité par: gregmurf, à: 5/08/16 14:08<br><br>Message édité par: gregmurf, à: 5/08/16 15:26

Powershell: la vie est belle :)

Connexion ou Créer un compte pour participer à la conversation.

Plus d'informations
il y a 9 ans 9 mois #22115 par xyz
Réponse de xyz sur le sujet Re:Parametres
Salut,
le code associé aux paramètres est tjr exécuté AVANT le reste, c'est le fonctionnement de Powershell :
[code:1]
$sb={
param(
$param1 = (write-host \&quot;get-content c:\temp\&quot;«»),
$param2 = (write-host 'test-path \&quot;c:\temp\&quot;'),
$param3 = (write-host \&quot;send-email ......\&quot;«»)
)
if(-not($param2)) {$param3}
}
&amp;$sb -param2 'Test'
&amp;$sb -param1 'Test'
&amp;$sb
&amp;$sb P1 P2 P3
&amp;$sb P1 -param3 2
[/code:1]
Si le paramètre n'est pas renseigné sur la ligne d'appel le code associé est exécuté.

Sans savoir ce que tu veux faire, je n'ai pas de solution à te proposer.<br><br>Message édité par: Laurent Dardenne, à: 6/08/16 00:27

Tutoriels PowerShell

Connexion ou Créer un compte pour participer à la conversation.

Temps de génération de la page : 0.031 secondes
Propulsé par Kunena