PowerShell: Tipy pro využití PowerShellu v praxi (Aktualizace 1.5.2023)

Protože občas potřebuji v praxi občasné konstrukce v PowerShellu, sepíšu si je sem. Jistě se hodí i někomu dalšímu.

Protože občas potřebuji v praxi občasné konstrukce v PowerShellu, sepíšu si je sem. Jistě se hodí i někomu dalšímu. Článek budu postupně doplňovat dalšími užitečnými příkazy.

 

Seznam změněných souborů do 10 dnů

Potřeboval jsem si dohledat změněné soubory za posledních 10 dnů v konkrétním adresáři a jeho podadresářích. K tomu poslouží tento příkaz:

Get-ChildItem -Path e:\work -Recurse | Where-Object {$_.LastWriteTime -gt (Get-Date).AddDays(-10)}

 

 

Pokud chcete tyto změny jen u konkrétního typu souborů, například PST, použijte parametr Filter:

Get-ChildItem -Path e:\work -Filter *.pst -Recurse | Where-Object {$_.LastWriteTime -gt (Get-Date).AddDays(-10)}

 

Pokud chcete tyto změny naopak u všech souborů kromě konkrétního typu souborů, například ZIP, použijte parametr Exclude:

Get-ChildItem -Path e:\work -Exclude *.zip -Recurse | Where-Object {$_.LastWriteTime -gt (Get-Date).AddDays(-10)}

 

 

Informace o běhu stroje (uptime) v dnech, hodinách a minutách

Do svého skriptu Get-SystemReport jsem chtěl slovní popis o délce běhu v počtu dnů, hodin a minut.

$WmiOs = Get-WmiObject Win32_OperatingSystem -ErrorAction Stop
$Temptime = ([wmi]'').ConvertToDateTime($WmiOs.LocalDateTime)
$SystemTime = "$($Temptime.ToShortDateString()) $($Temptime.ToShortTimeString())"
$Temptime = ([wmi]'').ConvertToDateTime($WmiOs.LastBootUptime)
$OsLastBoot = "$($Temptime.ToShortDateString()) $($Temptime.ToShortTimeString())"
$UpTime = New-TimeSpan -Start $OsLastBoot -End $SystemTime
$UpTime = "$($UpTime.days) days $($Uptime.hours) hours $($Uptime.minutes) minutes"
Write-Host $UpTime

 

 

Počet dnů v aktuálním měsíci

Při generování reportů, občas potřebuji pracovat s počtem dnů v měsíci.

[DateTime]::DaysInMonth((get-date).Year, (get-date).Month)

 

Aktualizace

24.04.2023

První vydání článku.

01.05.2023

Nový odstavec Počet dnů v aktuálním měsíci.

 

Michal Zobec

Michal Zobec Senior IT Consultant, Project Manager ZOBEC Consulting

Nechte vzkaz