Kaip automatizuoti „Mac“ šiukšlinės išvalymą

Man patinka, kad „Mac“ kompiuteryje daugelį procesų galima automatizuoti. Kai kurių procesų automatizavimą „Mac“ yra numačiusi „Apple“ ir įdiegusi jų įjungimą vartotojo sąsajos pagalba, tačiau lai kurių procesų automatizavimui „Apple“ yra pateikusi tik įrankius ir automatizavimą sutvarkyti turi pats vartotojas.

Kiekviename „Mac“ kompiuteryje, kuriame įdiegta „OS X Tiger“ (10.4) ar naujesnė „OS X“ versija yra ir „Automator“ aplikacija. Šios aplikacijos pagalba, be kokių nors specialių žinių galima sukurti nesudėtingą, tačiau naudingą aplikaciją ir taip automatizuoti tam tikrus veiksmus. „OS X Automator“ veikia su eile „OS X“ aplikacijų, tokių kaip „Finder“, „Safari“, „Calendar“ ir t.t. „Automator“ taip pat veikia ir su kai kuriomis kitų programuotojų sukurtomis aplikacijomis, tokiomis kaip „Microsoft Office“, „Adobe Photoshop“, „Pixelmator“ ir t.t.

Automator aplikaciją rasite „Mac“ kompiuterio „Applications“ aplanke
„Automator“ aplikaciją rasite „Mac“ kompiuterio Applications aplanke

„Automator“ naudinga kai reikia automatizuoti kelių ar keleto vartotojo veiksmų reikalaujančius uždavinius. Tokiems vartotojo veiksmams aprašyti galima sukurti „Automator“ aplikaciją, nurodyti kokius veiksmus norima atlikti ir tai išsaugoti kaip atskirą failą/aplikaciją. „Automator“ leidžia automatizuoti ir taip, kad nereikėtų tos aplikacijos vartotojui paleidinėti ir ji pati, kas tam tikrą laiko tarpą juos automatiškai atliktų.

Vieną tokių automatiškai atliekamų veiksmų, padėsiančių išsaugoti geresnes „Mac“ kompiuterio sanitarines sąlygas aprašysiu žemiau.

Automatinis „Mac“ kompiuterio „šiukšlių išnešimas“

Vienas paprasčiausių būdų automatiškai atlikti tam tikrus veiksmus „Mac“ kompiuteryje yra „Automator“ pagalba sukurti Kalendoriaus įrašo aplikaciją.

Žemiau aprašytu būdu galite sukurti kalendoriaus įrašo aplikaciją, kuri trins „Mac“ kompiuterio šiukšlinėje (Trash) esančius failus kalendoriaus įrašuose nurodytu periodiškumu.

Daug vartotojų nuoširdžiai trina failus, tačiau pamiršta išsivalyti „Trash'ą“. Man patinka „Mail“ aplikacijos funkcija automatiškai trinanti ištrintus ar į „Junk“ aplanką patalpintus elektroninius laiškus. Taip pat nematau reikalo užsukinėti į „Trash“ aplanką ir jį periodiškai valyti, jei tą veiksmą galima automatizuoti (juk būtumėme laimingi jei it iš namų šiukšlės dingtų automatiškai) :) .

  • Atidarykite „Automator“ aplikaciją, ją rasite „Mac“ kompiuterio Aplications aplanke.
  • Atsidariusiame lange pažymėkite „Calendar Alarm“
    Automator aplikacijos pradinis vaizdas
  • spauskite ant „Choose“ mygtuko
  • Kairėje pusėje esančiame stulpelyje pažymėkite Utilities
  • Iš dešiniau esančio stulpelio į dešiniausią - pagrindinį aplikacijos langą pertempkite „Run Shell Script“ (arba porą kartų pele spragtelėkite per „Run Shell Script“)
  • atsidariusiame Shell komandos langelyje ištrinkite viską kas jame yra įrašyta (greičiausiai ten bus cat komanda) ir įrašykite šį tekstą:
    #!/bin/bash
    rm -rdf ~/.Trash/*

    Jei kompiuteryje įdiegta daugiau diskų ar esate diską suskaidę į skirsnius (particijas), ar norite, kad būtų ištuštinamos ir dažnai prie kompiuterio pajungtų išorinių diskų šiukšliadėžės (aišku jei jie komandos vykdymo metu yra prie kompiuterio pajungti) – įrašykite ir kelią iki tuose diskuose esančių .Trash aplankų. Pavyzdžiui:

    #!/bin/bash
    rm -rdf ~/.Trash/*
    rm -rdf /Volumes/diskas1/.Trashes/501/*
    rm -rdf /Volumes/diskas2/.Trashes/501/*
    rm -rdf /Volumes/diskas3/.Trashes/501/*
    rm -rdf /Volumes/diskas4/.Trashes/501/*

    Būkite dėmesingi rašydami šią komandą. Shell komanda rm -rdf trina visus failus ir aplankus nurodytoje direktorijoje ir neprašys patvirtinimo jų ištrynimui, todėl įrašykite ją tiksliai taip - su visomis tildėmis (~), taškais bei žvaigždute pabaigoje po pasviro brūkšnio kaip parodyta pavyzdyje.
  • Iš Automator meniu pasirinkite File > Save (Cmd ⌘-S) ir suteikite aplikacijai pavadinimą. Tokiu pavadinimu bus matomas ir įrašas kalendoriuje.
    OS X Automator kuriama kalendoriaus įrašo aplikacija skirta automatiškam vartotojo šiukšlinės valymui
  • Išsaugojus sukurtą aplikaciją automatiškai bus atidaryta „Calendar“ aplikacija ir joje sukurtas įrašas su aplikacijos pavadinimu įrašo aprašymo lauke.
    OS X Automator aplikacija skirta automatiniam „Mac“ šiukšlinės valymui patalpinta „OS X“ „Calendar“ aplikacijoje.
  • Sukurtame „Calendar“ aplikacijos įraše nurodykite periodiškumą, kada šis veiksmas turi būti atliekamas.

Jei neturėjote „On My Mac“ „Calendar“ grupės, šis kalendoriaus įrašo tipas tokią grupę sukurs.

Dar daugiau galimybių automatizuojant „Mac“ šiukšlinės valymą

Jei esate iš tų žmonių, kuriems tenka grąžinti failus iš šiukšlinės į vietą - galite, kurdami „Automator“ aplikaciją nurodyti, kad būtų trinami tik tam tikro senumo failai, pakeisdami antrą „Shell“ skripto eilutę atitinkama komanda, pvz.:

find ~/.Trash/* -mtime +1d -print0 | xargs -0 rm -rdf

Tiems, kas nelabai jaučiasi stiprūs „Shell“ skriptuose paaiškinsiu, kad ši komanda randa failus šiukšlinėje patalpintus seniau nei prieš vieną dieną ir juos ištrina, šiukšlinėje palikdama failus, nuo kurių patalpinimo į „Trash'ą“ praėjo mažiau nei 24 valandos.
+1d nurodo daugiau nei vieną dieną, +2d - bus daugiau nei dvi dienos +2h - daugiau nei dvi valandos.

Galite paeksperimentuoti su -mtime, -mmin, -atime, -ctime, -anewer ir kitais find komandos laiko raktais. Daugiau informacijos apie find komandos gramatiką rasite Terminal aplikacijoje įvedę

man find

arba, kad būtų patogiau skaityti

man -t find | open -f -a /Applications/Preview.app
Jei eksperimentuosite su komanda terminal aplikacijoje nenaudokite rm -rdf dalies joje, nes ji trins failus. Vietoje jos geriau įveskite -n1.
Visa bandymui skirta komanda galėtų atrodyti:

find ~/.Trash/* -mtime +1d -print0 | xargs -0 -n1

Tokiu atveju, Terminal aplikacijos lange failai, kurie būtų ištrinti panaudojant rm komandą bus tik parodomi.

Vartotojams, kurių „Mac“ kompiuteriuose daugiau nei 1 HDD ar SSD diskas, gali tekti nurodyti kelis „Trash“ aplankus, kuriuose turi būti trinami failai.Tokiu atveju „Shell“ skripte įrašykite dar vieną eilutę, tik joje nurodykite, kad būtų trinami kitame diske esančio Trash turinys.

Jei kartais kam kiltų klausimas, kurioje vietoje „Automator“ pagalba sukurta aplikacija yra išsaugota, tai ją rasite ~/Library/Workflows/Applications/Calendar

Jei viską teisingai padarėte, daugiau rūpintis „Mac“ šiukšlinės išvalymu nereikės - visa tai bus atliekama automatiškai, „Calendar“ aplikacijoje nurodytu periodiškumu vykdant „Automator“ sukurtos aplikacijos paleidžiančios „Shell“ skriptą pagalba.

Apie Ramūnas Blavaščiūnas

Fotografijos, geros technikos ir kavos mylėtojas

Komentarų: 6 | Ačiū, kad rašote lietuviškai

  1. Na su pradine komanda viskas pasiseka gerai, bet jei bandau pakeisti antrą eilutę į:
    find ~/.Trash/* -mtime +1d -print0 | xargs –0 rm -rdf

    Meta klaidą:
    The action “Run Shell Script” encountered an error.

  2. To priežasčių gali būti ne viena. Ką rodo Automator logas. Jį įjungti galima iš meniu View → Log arba ⌥⌘L
    Kaip atrodo pilnai visas komandinis laukas/visos komandos?

  3. Dabar perkopijavau iš komentare rašyto, ir pradėjo veikti.

    • Greičiausiai kopijuojant susimaišė kažkokie simboliai. Terminal'o komandas visada geriausia ne kopijuoti, o perrašyti (ypač jei patirties „komandinėje eilutėje“ nėra daug), nes ten būna visokių -, ', `, " ir t.t., kurie www gali būti interpretuojami skirtinai ar net pakeičiami, o komandose labai svarbu, kad būtų naudojamos tokie simboliai, kokie turi būti.

Parašykite komentarą

Į viršų