Powershell odstraňuje súbory z používateľských priečinkov. Odstráňte súbory staršie ako n dní. Vytvorte úlohu v Plánovači úloh
Jedna z vlastností najnovšie verzie Windows 10 je schopnosť udržiavať sa v čistote automatickým odstraňovaním súborov, ktoré sa po určitom čase stali nepotrebnými. V starších verziách systému, ktoré túto funkciu ešte nemajú, môžete použiť príkazový riadok, konzola PowerShell a dokonca Dirigent, aj keď postup čistenia pomocou druhého nie je taký pohodlný.
Zvážme všetky tri možnosti.
Odstránenie starých súborov pomocou Prieskumníka
Prieskumnícka stuha Windows 10 a 8.1 obsahuje nástroj, ktorý umožňuje triediť všetky súbory v adresári podľa dátumu úpravy, typu, veľkosti a niektorých ďalších vlastností. Povedzme, že chcete odstrániť súbory staršie ako jeden mesiac. Prejdite do priečinka so zastaranými súbormi a stlačte kláves F3 na klávesnici. Tým sa dostanete do sekcie vyhľadávania na páse s nástrojmi Prieskumník.
Kliknite na ikonu "Dátum zmeny" a z rozbaľovacieho zoznamu vyberte požadované časové obdobie, v tomto prípade mesiac.
Prieskumník okamžite zoradí všetky súbory podľa daný parameter, takže ich stačí vybrať myšou a poslať do koša. Metóda je jednoduchá, ale nie príliš pohodlná, pretože všetko sa musí robiť ručne. Je ich oveľa viac efektívna metóda vymazanie starých súborov a teraz to len zvážime.
Odstránenie starých súborov na príkazovom riadku
Ak chcete odstrániť súbory z "vypršala" použijeme konzolovú utilitu ForFiles.exe A, ktorá je zodpovedná za výber objektu a vykonanie špecifikovanej akcie na ňom. Nástroj podporuje niekoľko možností, konkrétne:
/S- umožňuje vykonávať rekurzívne vyhľadávanie.
/P- určuje cestu k oddielu alebo adresáru.
/D- označuje počet dní od poslednej úpravy.
/C- nastaví príkaz, ktorý bude pôsobiť na súbor.
V tíme ForFiles môžete tiež zadať premenné, ktoré vracajú rôzne hodnoty, napr. @súbor, ktorý vráti názov súboru a ktorý budeme používať. Napríklad odstráňte všetky súbory staršie ako 10 dní v priečinku "obrázky" umiestnený v koreňovom adresári systémovej jednotky.
Otvorte príkazový riadok a spustite nasledujúci príkaz:
ForFiles /p "C:\Pictures" /s /d -10 /c "cmd /c del @file"
ForFiles / p "C:\Pictures" / s / d - 10 / c "cmd /c del @file" |
Príklad používa tri kľúče /str (cesta) , /s (rekurzia) a /d (počet dní) , ako aj príkaz delete del a premenná názvu súboru @súbor. Keď stlačíme enter, ForFiles iterujte obsah priečinka "obrázky", vrátane vnorených adresárov a vymaže všetky súbory staršie ako 10 dní .
Ako vidíte, táto metóda je efektívnejšia a rýchlejšia, navyše ju môžete automatizovať vytváraním úloh pre ňu v Plánovači.
Poznámka: po vykonaní príkazu sa v konzole môže objaviť hlásenie, že určitý súbor nemožno nájsť. Nevadí, zvyčajne to tak je skrytý súbor databázy, ktorá je zodpovedná za nastavenie adresára. Ak nie je v priečinku (a teoreticky by malo byť), ForFiles upozorní používateľa.
Odstránenie starých súborov pomocou PowerShell
Tu je takmer všetko rovnaké ako v príklade s príkazový riadok, okrem toho, že syntax je odlišná. Predpokladajme, že sa nezmenila ani cesta k priečinku so súbormi, ani ciele. Spustenie konzoly PowerShell a vykonajte príkaz ako je tento.
Niekedy je potrebné odstrániť súbory staršie ako n dní. Napríklad zálohy. Môžete to urobiť ručne, zoradiť ich podľa dátumu a odstrániť, alebo môžete použiť skript. AT tento príklad pozrieme sa na skript na mazanie súborov starších ako n dní a pridáme úlohu do plánovača Windows Server 2012R2.
1.
2.
Skript na odstránenie súborov starších ako n dní
Skript je v skutočnosti veľmi jednoduchý, vytvorený v PowerShell a vyzerá takto:
FORFILES /p F:\backup\ /s /m *.* /d -30 /c "CMD /c del /Q @FILE"
Kde:
F:\záloha\- cesta, v ktorej priečinku budeme hľadať súbory na odstránenie
*.*
— názov (maska) súborov
/d-30- staršie ako koľko dní potrebujeme na vymazanie súborov.
Takto to vyzerá v PowerShell:
Zostáva to len vykonať a je to.
Vytvorte úlohu v Plánovači úloh
Všetko je v poriadku, máme scenár. Môžeme to urobiť ručne, keď potrebujeme vyčistiť zálohy. Ale prečo to robiť ručne? Dáme pokyn plánovačovi, aby spustil náš skript a zbavil sa rutinnej práce sami.
Čo k tomu teda potrebujeme?
Na začiatok poďme na Štart -> Ovládací panel -> Nástroje na správu"a bež tam" Plánovač úloh«.
Vyberte položku " Vytvorte úlohu«:
Na karte " generál» nastavte názov úlohy, jej popis a používateľa, od ktorého sa bude vykonávať. V predvolenom nastavení to bude používateľ, ako ste práve prihlásený.
program alebo skript
a zadajte cestu k PowerShellu:
C:\Windows\SysWOW64\WindowsPowerShell\v1.0\powershell.exe
A v argumente špecifikujeme cestu k nášmu skriptu, ktorý sme vytvorili skôr:
Súbor "c:\script\chistkaf.ps1"
stlačte " OK" ešte raz " OK»
Všetko, na tomto je stvorená naša úloha. Zostáva počkať na dokončenie našej naplánovanej akcie a skontrolovať, či je všetko správne nakonfigurované.