Script de base Powershell

De Travail-ivan
Version datée du 17 novembre 2023 à 08:36 par Ivan (discussion | contributions) (Page créée avec « == Script de base Powershell == === ajoutCompte === # Ajoute un compte dans la base locale du système # à partir de la saisie du nom, du mopt de passe et de la description # puis ajout du compte au groupe local Utilisateurs $nom=Read-Host -Prompt "Saisir un nom" $UserPassword=Read-Host –AsSecureString -Prompt "Saisir un mot de passe" $nomComplet=Read-Host -Prompt "Saisir le nom complet" $description=Read-Host -Prompt "Saisir une description" try {... »)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)

Script de base Powershell

ajoutCompte

  1. Ajoute un compte dans la base locale du système
  2. à partir de la saisie du nom, du mopt de passe et de la description
  3. puis ajout du compte au groupe local Utilisateurs
$nom=Read-Host -Prompt "Saisir un nom"
$UserPassword=Read-Host –AsSecureString -Prompt "Saisir un mot de passe"
$nomComplet=Read-Host -Prompt "Saisir le nom complet"
$description=Read-Host -Prompt "Saisir une description"
try
{
   $compte=New-LocalUser $nom -Password $UserPassword -FullName $nomComplet -Description $description
   Write-Host "$nom ajouté"
   # ajout du compte au groupe local Utilisateurs 
   Add-LocalGroupMember -Group "Utilisateurs" -Member $nom
}
catch{
    Write-Host "$nom existe déjà"
}

suppressionCompteFichier

  1. Suppression de comptes dans la base locale du système
  2. à partir des informations contenues dans un fichier
  3. texte : nomCompte/NomComplet/Description/password
$fichier="C:\testPowershell\listeCompte.txt"
 if (Test-Path $fichier){
    $colLIgnes=Get-Content $fichier
    foreach($ligne in $colLignes){
        $tabCompte=$ligne.Split("/")
       
        $nom=$tabCompte[0]  
        try
        {
           Remove-LocalUser $nom -Verbose
           Write-Host "$nom supprimé" 
        }
        catch
        {
            Write-Host "$nom n'existe pas"
        }
    }
}
else{
    Write-Host "$fichier pas trouvé"
}

lireFichier

# Script de parcours d'un fichier texte
# Contenu du fichier : nomCompte/nomComplet/Description
# Affiche le nom du compte
$fichier="C:\testPowerShell\listeCompte.txt"
 if (Test-Path $fichier){
    $colLIgnes=Get-Content $fichier
   
    foreach($ligne in $colLignes){
        $tabCompte=$ligne.Split("/")
        Write-Host $tabCompte[0]
        Write-Host $tabCompte[1]
        Write-Host $tabCompte[2]
    }
}
else{
    Write-Host "$fichier pas trouvé"
}

lastlogin

  1. Affiche la date de dernière connexion
  2. d'un compte local du système
$ErrorActionPreference = 'Stop'
$nom=Read-Host -Prompt "Saisir un nom de compte local"
try {
 $compte=Get-LocalUser -Name $nom | Select-Object * 
 Write-Host $compte.LastLogon
  }
catch{
   Write-Host "$nom non trouvé"
 }