Komendy PS

Eksport do CSV do lokalizacji w której znajduje się skrypt

$ScriptDir = Split-Path $script:MyInvocation.MyCommand.Path
$dane | Sort-Object "Nazwisko i Imię" | Export-Csv -Path "$ScriptDir\plik.csv" -Encoding UTF8

Wypisanie pełnej nazwy komputera

[System.Net.Dns]::GetHostByName($env:computerName).HostName

Konfiguracja źródła ODBC

Add-OdbcDsn -Name "nazwa_źródła" -DriverName "nazwa_sterownika" -DsnType "System" -Platform "64-bit" -SetPropertyValue @("Server=IP_bazy", "Trusted_Connection=Yes", "Database=nazwa_bazy")

Ostatni fragment ze ścieżki OU

Jednostka = $user.DistinguishedName -replace '.+?,OU=(.+?),(?:OU|DC)=.+','$1'

Restart jednostki

Restart-Computer -ComputerName nazwa_hosta -Force

Weryfikacja wolnej przestrzeni na dysku C zdalnego komputera

Wariant I

$disk = ([wmi]"\\nazwa_hosta\root\cimv2:Win32_logicalDisk.DeviceID='c:'" )
$disk.FreeSpace/1GB | write-output

Wariant II

$secpasswd = ConvertTo-SecureString "haslo_admina" -AsPlainText -Force
$mycreds = New-Object System.Management.Automation.PSCredential("konto_admina", $secpasswd)
(Invoke-Command -ComputerName nazwa_hosta {Get-PSDrive C} -Credential @mycreds | Select-Object @{Name="GB";Expression={$_.Free/1GB}} | Format-Wide | Out-String).trim()

Wywołanie skryptu w postaci jednolinijkowej

$secpasswd = ConvertTo-SecureString "haslo_do_konta" -AsPlainText -Force ; $mycreds = New-Object System.Management.Automation.PSCredential("nazwa_konta", $secpasswd) ; Invoke-Command -ComputerName nazwa_hosta {Get-PSDrive C} -Credential @mycreds | Select-Object Free | Format-List

Tags: