Archive

Articles taggués ‘Import’

Lancer une commande Dos avec une variable issue d’un import.

Utiliser PowerShell pour lancer par exemple un « reg query » ou tout autres commandes Dos sur une liste de PC présents dans un fichier texte.

?View Code POWERSHELL
$list = Import-CSV -Path "./comp-list.txt"
 
ForEach ($comp in $list) { 
    $ip = $comp.ip
    $cmdreg = "reg query \\$ip\HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\Lsa"
    Invoke-Expression $cmdreg
 }

;)

Categories: Powershell Tags: , ,

Faire un recherche DNS sur un liste d’adersse IP

Un script PowerShell pour faire un recherche DNS sur une liste d’adresse IP à la manière d’un NSLookup.

?View Code POWERSHELL
$list  = Get-Content -Path .\nslookuplist.txt
Foreach ($ip in $list) {
[System.Net.Dns]::GetHostByAddress("$ip") 
}
Categories: Powershell Tags: , ,

Importer la création de comptes Active Directory 2008 R2

Voici comment importer dans Active Directory 2008 R2 des comptes depuis un fichier texte.
Le login est formaté par rapport au nom et prénom de l’utilisateur. Dans cette exemple, on utilise les 6 premières lettres du nom et les 2 premières lettres du prénom.

?View Code POWERSHELL
Import-Csv -Path .\Import\import-adms.txt | foreach {
$firstname = (Get-Culture).TextInfo.Tolower($_.prenom)
$firstname = (Get-Culture).TextInfo.ToTitleCase($firstname)
$lastname = (Get-Culture).TextInfo.ToUpper($_.nom)
$name = $lastname + ' ' + $firstname
if ($_.nom.Length -le 6) {
$samaccount = $lastname + $firstname.Remove(2)
}
Else {
$samaccount = $lastname.Remove(6) + $firstname.Remove(2)
}
$descrition = $_.Societe + "-" + $_.Description
$upn = $samaccount + "@domain.fr"
$AccountPassword = (ConvertTo-SecureString "Pass2Key2" -AsPlainText -force)
 
New-ADUser -Name $name -GivenName $firstname -Surname $lastname -Path "OU=Comptes,DC=corp,DC=domain,DC=fr" -SamAccountName $samaccount -Description $descrition -UserPrincipalName $upn -AccountPassword $AccountPassword -Enabled $true -ChangePasswordAtLogon $true
}

Afficher une barre de progression.

Lors du traitement en PowerShell d’une grosse quantité d’objets à l’aide d’un fichier CSV.
Il peut être sympa de visualiser une barre de progression.
Voici une méthode pour intégrer cette option dans un script.

?View Code POWERSHELL
$importf = Import-Csv -Path .\import_file.csv 
$i=0
Foreach ($mailcontact in $importf)
{
Get-MailContact -Identity $mailcontact.alias
 
$i=$i+1
  	if ($importf.Count -ge 0)
    {
    	Write-Progress -activity "List Contact" -Status $mailcontact.DisplayName -percentcomplete ($i/$importf.Count*100) 
    }
}