Wyświetlasz starszą wersję (v. /wiki/spaces/KB/pages/10322003/Skrypty+systemowe) tej strony.
pokaż różnice
pokaż historię strony
« Pokaż poprzednią wersję
Wyświetlasz aktualną wersję tej strony. (v. 3)
Obecny »
W LOG Plus udostępniamy listę gotowych skryptów, które można wykorzystać lub użyć jako podstawę i dostosować do swoich potrzeb.
Archiwizacja profilu użytkownika Windows
Założenia
Skrypt pozwala na archiwizację wybranego profilu użytkownika. Archiwizacja polega na skompresowaniu profilu użytkownika zgodnie z zadanym filtrem, oraz umieszczenie go w określonej lokalizacji (również sieciowej)
Parametry domyślne:
-userLogin -destinationDir
Treść skryptu
param([Parameter(Mandatory=$true)][string]$userLogin, [Parameter(Mandatory=$true)][string]$destinationDir ,[string]$filter = "(name = *.*)", [switch]$skipOnError)
# Skrypt archiwizujący profil użytkownika
# umożliwia skompresowanie profilu użytkownika zgodnie z zadanym filtrem,
# oraz umieszczenie go w określonej lokalizacji (również sieciowej)
# Parametry:
# -userLogin - nazwa użytkownika w postaci: login , lub DOMENA\login
# -destinationDir - katalog docelowy np. c:\ , lub \\192.168.1.1\backups
# -filter - filtr określający jakie pliki mają być achiwizowane (domyślnie wszystkie)
# szczegóły http://dotnetzip.herobo.com/DNZHelp/html/4469abe7-8fa4-101e-975d-305d2fd0affb.htm
# np. "(name != *.mp3) and (name != *.avi)" - wyklucza pliki mp3 i avi
# -skipOnError - pomiń pliki, których nie można dodać
$a = [System.Reflection.Assembly]::LoadFrom([System.AppDomain]::CurrentDomain.BaseDirectory + "ext\Ionic.Zip.dll");
try
{
$ob = New-Object System.Security.Principal.NTAccount($userLogin)
$sid = $ob.Translate([System.Security.Principal.SecurityIdentifier])
}
catch
{
Write-Error "Unable to find user $userLogin"
exit -2
}
$regPath = 'HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList\' + $sid
$path = (Get-ItemProperty -path $regPath).profileImagePath
$zipFile = $destinationDir + "\" +$userLogin.Replace('\','.') + (Get-Date).ToShortDateString() + ".zip"
"Writing $path to $zipFile"
try
{
$strWriter = new-object System.IO.StringWriter
$zip = new-object Ionic.Zip.ZipFile
$zip.UseZip64WhenSaving = [Ionic.Zip.Zip64Option]::AsNecessary
if ($skipOnError)
{
$zip.StatusMessageTextWriter = $strWriter
$zip.ZipErrorAction = [Ionic.Zip.ZipErrorAction]::Skip
}
$zip.AddSelectedFiles($filter, $path,"",$true)
$zip.Save($zipFile)
}
finally
{
[System.Text.RegularExpressions.Regex]::Replace($strWriter.ToString(), "^adding.*$[\r\n]*", [String]::Empty, [System.Text.RegularExpressions.RegexOptions]::Multiline)
$zip.Dispose()
}
Parametry:
Wymagane:
userLogin - nazwa użytkownika w postaci: login, lub DOMENA\login,
destinationDir - katalog docelowy np. c:\ , lub \\192.168.1.1\backups,
Opcjonalne:
filter - filtr określający jakie pliki mają być achiwizowane (domyślnie wszystkie) np. "(name != *.mp3) and (name != *.avi)" - wyklucza pliki z rozszerzeniem mp3 i avi,
skipOnError - pomiń pliki, których nie można dodać.
Czyszczenie katalogów tymczasowych wszystkich użytkowników systemu Windows
Kliknij tutaj, aby rozwinąć...
Kliknij tutaj, aby rozwinąć...
Dodanie komputera do domeny
Odinstalowanie wybranego oprogramowania
Odświeżenie adresu IP (DHCP)
Odświeżenie buforu rozpoznawania nazw DNS
Odświeżenie zasad zabezpieczeń lokalnych/AD
Sprawdzenie konfiguracji wybranej usługi systemu Windows
Usunięcie konta użytkownika w systemie Windows
Usunięcie wybranego katalogu wraz z jego zawartością
Wykonanie restartu wybranej usługi w systemie Windows
Wykonanie wyłączenie, restartu lub hibernacji komputera
Wykonanie zmiany adresu IP komputera
Wykonanie zmiany opisu komputera
Wyświetlenie danej poprawki Windows
Wyświetlenie informacji o systemie Windows
Wyświetlenie listy oprogramowania w systemie Windows
Wyświetlenie listy procesów systemu Windows
Wyświetlenie listy zainstalowanych poprawek Windows
Zakończenie wybranego procesu Windows
Zarządzanie usługą PowerShell