Question [résolu]condition if

Plus d'informations
il y a 12 ans 3 mois #16651 par lege
Réponse de lege sur le sujet Re:condition if
si dans le script A les valeurs ne sont \"1\" ou \"0\" et que la valeur est vide alors elle est testé

Si la valeur est nul alors la valeur par défaut est \"0\" pour la variable master

Si la valeur est nul alors la valeur par défaut est \"1\" pour la variable windows7 et \"0\" pour la variable serveur

[code:1]
Param($master,$serveur)

if($master -eq \"\"«») {
$master = \"0\"

}

if ($serveur -eq \"\"«») {
$windows7 = \"1\"
$serveur = \"0\"
} elseif ($serveur -eq \"0\"«») {
$windows7 = \"1\"

}


if((($master -eq \"1\"«») -or ($master -eq \"0\"«») -and ($windows7 -eq \"0\" -and $serveur -eq \"1\"«»)))
{
#Commande powershell désactiver le compte administrateur

$user = [adsi]\"WinNT://$env:computername/administrateur\"
$user.UserFlags.value = $user.UserFlags.value -bor 0x0002
$user.CommitChanges()
}
[/code:1]

Message édité par: arsoul, à: 19/12/13 15:40<br><br>Message édité par: arsoul, à: 19/12/13 15:57

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

Plus d'informations
il y a 12 ans 3 mois #16654 par Laurent Dardenne
Réponse de Laurent Dardenne sur le sujet Re:condition if
arsoul écrit:

si dans le script A les valeurs ne sont \&quot;1\&quot; ou \&quot;0\&quot; et que la valeur est vide alors elle est testé

Ok pour la valeur null c'est fait, mais que signifie '1' ou '0' ici ? Et qui les renseigne ?
Quant au test déclenchant ou non la désactivation, il n'est pas maintenable en l'état. On ne sait pas ce que tu y fais, comment veux-tu qu'on t'aide sur cette partie si on ne connait pas la règle de gestion ?<br><br>Message édité par: Laurent Dardenne, à: 19/12/13 15:57

Tutoriels PowerShell

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

Plus d'informations
il y a 12 ans 3 mois #16656 par lege
Réponse de lege sur le sujet Re:condition if
dans le script A c'est un utilisateur qui renseigne les valeurs manuellement

$master = 0 correspond a une normalisation d'un poste client
$master = 1 correspond à une configuration après l'installation d'un windows 7 ou d'un serveur 2008

$windows7 = 1 correspond à un poste client windows 7
$serveur = 0 correspond à un poste client windows 7
$serveur = 1 correspond à un serveur 2008

$master = \&quot;\&quot; correspond à la valeur \&quot;0\&quot;
$serveur = \&quot;\&quot; correspond à la valeur \&quot;0\&quot; pour la variable $serveur et à la valeur \&quot;1\&quot; pour la variable $windows7


le test

[code:1]
if((($master -eq \&quot;1\&quot;«») -or ($master -eq \&quot;0\&quot;«») -and ($windows7 -eq \&quot;0\&quot; -and $serveur -eq \&quot;1\&quot;«»)))

{

#Commande powershell désactiver le compte administrateur



$user = [adsi]\&quot;WinNT://$env:computername/administrateur\&quot;

$user.UserFlags.value = $user.UserFlags.value -bor 0x0002

$user.CommitChanges()

}
[/code:1]


c'est juste un exemple car j'en ai d'autre dans mon script<br><br>Message édité par: arsoul, à: 19/12/13 16:04

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

Plus d'informations
il y a 12 ans 3 mois #16658 par Laurent Dardenne
Réponse de Laurent Dardenne sur le sujet Re:condition if
arsoul écrit:

c'est juste un exemple car j'en ai d'autre dans mon script

On va déjà se contenter de celui-là :laugh:

Comme tu mélanges l'implémentation et la rédaction de ta règle de gestion, je commence à me perdre dans tes explications :silly:

Pour $windows7, à quoi corresponde la valeur 0 et \&quot;\&quot; ?
arsoul écrit:

$serveur = \&quot;\&quot; correspond à la valeur \&quot;0\&quot; pour la variable $serveur et à la valeur \&quot;1\&quot; pour la variable $windows7

On te fournis l'aspirine ou c'est à ta charge ?
Je ne comprend pas pourquoi, la valeur d'un paramètre dépend d'un autre ?

De ce que je comprend, tes paramètres portent des informations de traitement ET de cibles ( type de poste). C'est bien cela ?

Tutoriels PowerShell

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

Plus d'informations
il y a 12 ans 3 mois #16659 par lege
Réponse de lege sur le sujet Re:condition if
la valeur \&quot;\&quot; est une valeur vide

si l'utilisateur ne met pas de valeur alors par défaut je force moi même la valeur

l'utilisateur ne peut utiliser que deux variables ($master et $serveur)

la variable $windows7 ne rentre pas en compte (pour simplifier le script A volontairement)

la valeur dépend d'une autre car si ce n'est pas un windows7 alors ça sera un serveur 2008

si ce n'est pas un serveur 2008 alors ce sera un windows7


Laurent écrit :


De ce que je comprend, tes paramètres portent des informations de traitement ET de cibles ( type de poste). C'est bien cela ?


oui c'est bien ça

on va finir par y arriver :evil: :laugh:<br><br>Message édité par: arsoul, à: 19/12/13 16:46

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

Plus d'informations
il y a 12 ans 3 mois #16660 par Laurent Dardenne
Réponse de Laurent Dardenne sur le sujet Re:condition if
arsoul écrit:

on va finir par y arriver

Possible.
Donc pour
$windows7 = 0 correspond à un poste client serveur 2008 . C'est bien ça ?
Parce que dans ton script la valeur par défaut n'est pas affecté : $windows7 = \&quot;0\&quot; n'existe pas.

En reformulant, les traitements sont :
Normalisation #correspond a une normalisation d'un poste client
PostInstallation #correspond à une configuration après l'installation d'un windows 7 ou d'un serveur 2008

Et les cibles sont :
WindowsSeven # correspond à un poste client windows 7
Serveur2008 #correspond à un serveur 2008

C'est bien ça ?
Dans l'affirmative, il te reste à définir si on peut effectuer chaque traitement sur les deux cibles, C'est à dire un traitement à la fois sur une cible à la fois. La normalisation d'un poste se fait aussi sur un serveur ?

Tutoriels PowerShell

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

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