Jak promazávat balast ve skrytých adresářích ?

Zdravím,

mám zde teď pár serverů, které používají nějaké komponenty od Májkrosoftu a rády používají skryté adresáře. Typicky třeba :

C:\Users\Administrator\AppData\Local\Microsoft\Windows\Temporary Internet Files\Content.MSO
C:\Users\Administrator\AppData\Local\Microsoft\Windows\Temporary Internet Files\Content.Word
C:\Users\Administrator\AppData\Local\Microsoft\Windows\Temporary Internet Files\Content.IE5
C:\Users\Administrator\AppData\Local\Microsoft\Windows\InetCache\IE

apod.

Když běží ten skriptík, něco udělá v těch výše uvedených adresářích a skript skončí – a po sobě už neuklidí…. po nějakém čase je tam potom hrozný bordel a zabírá to místo. Průzkumník to neukáže… ani když zapnu skryté adresáře….

Tak jsem si udělal malý skriptík, který ten balast promazává… stačí to dát do šedulovaných tásků a pravidelně pouštět :

Powershell skriptík :

$tmp_directories = @(
"C:\Users\Administrator\AppData\Local\Microsoft\Windows\Temporary Internet Files\Content.MSO",
"C:\Users\Administrator\AppData\Local\Microsoft\Windows\Temporary Internet Files\Content.Word",
"C:\Users\Administrator\AppData\Local\Microsoft\Windows\Temporary Internet Files\Content.IE5",
"C:\Users\Administrator\AppData\Local\Microsoft\Windows\InetCache\IE"
)
# set min age of files
$max_days = "-7"
# get the current date
$curr_date = Get-Date
# determine how far back we go based on current date
$del_date = $curr_date.AddDays($max_days)
ForEach ($tmp_dir in $tmp_directories)
{
if(!(Test-Path $tmp_dir -PathType Container)) {
write-host "-- Path was not found : $tmp_dir"
} else {
write-host "-- I am deleting : $tmp_dir"
Get-ChildItem $tmp_dir -Recurse | Where-Object { $_.LastWriteTime -lt $del_date } | Remove-Item
}
}

no a pouštím to baťáčkem (zde jsem se inspiroval radami pana Ondřeje Ševečka )

cls
del "%~d0%~p0%~n0.log"
powershell -ExecutionPolicy Bypass -File "%~d0%~p0%~n0.ps1" > "%~d0%~p0%~n0.log"
exit /B %errorlevel%

Jak vykousnout BITLOCKER klíč s pomocí PowerShellu ?

Zase jeden praktickej tip – stále na to narážím a hodí se mi to mít – jak zálohovat BITLOCKER klíč pomocí PowerShellu ? Nejlépe tak, abych poslal vše někam do texťáku z komandlajny admina a nemusel stále klikat a dávat USB / tisknout…..

 

$drive = Get-BitLockerVolume | ?{$_.KeyProtector | ?{$_.KeyProtectorType -eq ‚RecoveryPassword‘}} | select -f 1

$key = $drive | select -exp KeyProtector | ?{$_.KeyProtectorType -eq ‚RecoveryPassword‘} | select -f 1

Backup-BitLockerKeyProtector $drive.MountPoint $key.KeyProtectorId

Write-Host „Backing up drive $drive, key $($key.KeyProtectorId), password $($key.RecoveryPassword)“

 

No a když si pomocí GPO povolím WinRM… a také na firewallu …! Mohu to také sosat vzdáleně :

 

$RemoteComputers = @(„COMPUTERNAME“,“COMPUTERNAME2″,“COMPUTERNAME3″)

ForEach ($Computer in $RemoteComputers)
{
Try
{Invoke-Command -ComputerName $Computer -ScriptBlock {

$drive = Get-BitLockerVolume | ?{$_.KeyProtector | ?{$_.KeyProtectorType -eq ‚RecoveryPassword‘}} | select -f 1
$key = $drive | select -exp KeyProtector | ?{$_.KeyProtectorType -eq ‚RecoveryPassword‘} | select -f 1
Backup-BitLockerKeyProtector $drive.MountPoint $key.KeyProtectorId

Write-Host „Backing up drive $drive, key $($key.KeyProtectorId), password $($key.RecoveryPassword)“

} -ErrorAction Stop

}
Catch
{
Add-Content c:\temp\Unavailable-Computers.txt $Computer
}
}

 

Co se nepovedlo, dohledám v c:\temp\Unavailable-Computers.txt

PowerShell a export ovladačů Windows

Vždy, když to chci použít – vždy to zapomenu a musím to znovu zase hledat : export wokenních ovladačů z powershellu, moc užitečná věcička při reinstalacích woken ….

 

$Export = Export-WindowsDriver -Online -Destination C:\Temp\drivers

$Export | Select-Object classname, ProviderName, Date, Version | Sort-Object classname

 

Tak a už to nebudu nikdy hledat 🙂