Поиск по этому блогу

Показаны сообщения с ярлыком PowerShell. Показать все сообщения
Показаны сообщения с ярлыком PowerShell. Показать все сообщения

четверг, 26 февраля 2015 г.

Usefull AD commands

How to lock computers not logged in for last 4 weeks

dsquery computer -inactive 4 -limit 500 | dsmod computer -disabled yes

How to get a list of users in the OU with PowerShell

Get-ADUser -Filter * -SearchBase "ou=filial, dc=domain, dc=local"

How to get only names:

Get-ADUser -Filter * -SearchBase "ou=filial, dc=domain, dc=local" | fl Name

To write it into a file "d:\OUuserlist.txt":

Get-ADUser -Filter * -SearchBase "ou=filial, dc=domain, dc=local"  > d:\OUuserlist.txt

How many users are in certain OU
(Get-ADUser -SearchBase "ou=APK,ou=Users,ou=Offices,dc=local,dc=my,dc=ru" -ResultSetSize $null -LDAPFilter "(&(objectClass=user))").count

Get list with all computers in AD
Get-ADComputer -Filter * -Property * | Select-Object Name,OperatingSystem,Description | Export-CSV d:\AllWindows.csv -NoTypeInformation -Encoding UTF8

useful link

четверг, 7 февраля 2013 г.

резервные копии по расписанию скриптом powershell (scheduled backups with powershell scripts)

Если у вас есть задача выполнять несколько различных резервных копий по расписанию в windows server 2012 можно создать несколько скриптов с различными параметрами архивации, и выполнять их стандартным планировщиком windows.

Например вот мой скрипт:
Имя скрипта: Backup-monthly2NetMail.ps1
 #Get date from the system
$date = Get-Date -Format dd.MM.yyyy

#Create a new policy backup
$policy = New-WBPolicy

#Specify a list of folders included into backup
$files=new-WBFileSpec E:\shares\FOLDER1,E:\shares\FOLDER3,E:\shares\FOLDER4

#Add folders / source folders into the policy
Add-wbFileSpec -policy $policy -filespec $files

#Declaring the backup target
$backdir=("\\SERVER1\BackupShare\{0}\Monthly\{1:yyyyMMdd_hhmmss}" -f $env:computername,(get-date))

#Create backup folder into the network share
mkdir $backdir | out-null

#Declare backup location based on folder name
$backupLocation = New-WBBackupTarget -network $backdir 

#Add backup location into the policy
Add-WBBackupTarget -Policy $policy -Target $backupLocation

#Start backup procedure based on defined policy
Start-WBBackup -Policy $policy

$smtp = "<MY SMTP SERVER ADDRESS>" 
$from = "<SENDER>" 
$to = "<TARGET EMAIL ADDRESS>"
$body = "Backup Monthly 2 network share: $backupLocation Date: $date" 
$subject = "backup on $date" 
#Send an Email to User  
send-MailMessage -SmtpServer $smtp -From $from -To $to -Subject $subject -Body $body -BodyAsHtml 
 В планировщике создаем задание, с нужным вам временем и интервалом запуска

Действие запуск программы:  powershell.exe
Аргументы -NonInteractive -noprofile -command "&{E:\Backup-weekly2NetMail.ps1}"