Automatické mazání souboru starších než X dní…..

Zase jedna taková ptákovina – ale občas se se mi to hodí….. potřebuji automaticky mazat někde v nějakém adresáři soubory starší než X dní…. třeba 7 dní

Pak to naplánuju do šedulovaných tásků a ono se to bude promazávat samo…. a na serveru nebude docházet místo 🙂

 

Tak nejdříve pomocí komandlajny :

@echo off
:: cesta
set dump_path=c:\temp

:: kolik dní než se to promaže
set max_days=7

:: smaž soubory z %dump_path%
forfiles -p %dump_path% -m *.* -d -%max_days% -c "cmd  /c del /q @path"

:: smaž podadresáře z %dump_path%
forfiles -p %dump_path% -d -%max_days% -c "cmd /c IF @isdir == TRUE rd /S /Q @path"

Tak a ještě pomocí powershellu :

# cesta
$dump_path = "C:\temp"

# kolikd dní než se to promaže
$max_days = "-7"
 
# jaký je dnes aktuální datum na kompu
$curr_date = Get-Date

# kolik dní se budeme vracet
$del_date = $curr_date.AddDays($max_days)

# mažeme
Get-ChildItem $dump_path -Recurse | Where-Object { $_.LastWriteTime -lt $del_date } | Remove-Item

 

Je to sice volovina, ale občas se mi to hodí…. třeba se to bude hodit i někomu jinému.

Jak povolit PING skriptem ?

Ve výchozím stavu mají wokna firewall zapnutý a to tak, že … nejede ani PING, což mi vadí .

Dá se to pohodlně povolit přes grafické klikadlo…. ale…. lepší je to povolit z komandlajny pomocí NETSH

Stále to potřebuji, stále to lovím po paměti… takže to sem teď už napíšu

 

  1. CMD jako admin
  2. Pro IPv4 :
    netsh advfirewall firewall add rule name=“ICMP Allow incoming V4 echo request“ protocol=icmpv4:8,any dir=in action=allow
  3. Pro případné IPv6 :
    netsh advfirewall firewall add rule name=“ICMP Allow incoming V6 echo request“ protocol=icmpv6:8,any dir=in action=allow

 

Platí pro wokna číslo 10, dřív byla syntax mírně odlišná, něco jako netsh firewall add portopening TCP 666 „SaTaN“