Mi ez applescript - az iskolában

Ön nem használhatja AppleScript? Nem tudom, mi ez? Azt hiszed, ha nem lenne szükség rá? Vagy talán a memória iskolai tantárgyon okozni allergia támadás a puszta említése a „program”? Tehát, ha nem a helyes dolgot megnyitásával ezt a cikket.

Remélhetőleg ez segít foglalkozik ezzel a nagyon hasznos eszköz, és az olvasásra fordított idő, akkor fizet ki szépen.

Mi AppleScript

Gyakran, amikor dolgozik egy adott program, van sokszor, hogy azonos műveleteket hajtják végre: nyomja meg ugyanazt a gombokkal válassza ki ugyanazt a parancsot a menüből, adja meg ugyanazt értékeket párbeszédpanelek Ez volt akkor, és jön a támogatás az AppleScript. Bemutatjuk a szekvenciát a műveletek formájában Programs- „script”, és fuss - biztonságosan kávét, nézett, hogy lássa, az utóbbi kezelés alatt, háromezer 789. fájlt. Valami hasonló formában létezik egy DOS BAT-fájlok vagy szkriptek héj (shell) UNIX. De AppleScript fontos előnye: a nyelv „érteni”, mint a Finder, valamint a kérelmek nagy száma, és a szkript elérheti őket viszont.

Az általunk használt nyelv (ő is nevezett AppleScript), nagyon közel a sima angol. Például a script valahogy így néz ki:

Azt hiszem, mindenki megértette, hogy mit fog tenni. De ahhoz, hogy megtanulják, hogyan kell írni a saját scripteket, meg kell érteni néhány fogalmat.

Tárgyak, tulajdonságok, események, ...

Ugyanez a tárgyak (például, az összes mappa) alkotnak osztály (osztály). Minden objektumnak van néhány beállított tulajdonságainak (tulajdonságok), ami megkülönbözteti a másiktól. Például minden fájl neve, címke, típus, létrehozás dátuma, verzió, és több mint egy tucat jellemzőit. Némelyikük lehet változtatni a forgatókönyvet, néhány - csak olvasni.

Egy osztály (úgynevezett „leszármazottja”) öröklik a jellemzői egy másik osztály ( „szülő”). Például és mappák és fájlok egy közös őse - tétel (tétel).

Most tekintsünk el például, hozzátéve, egy kicsit is:

Először a parancs a Finder, hozzon létre egy új objektum osztály „mappa” található az asztalon. Része az ingatlan be van állítva a csapat (a mappa neve és színe címke), és a többi lesz rendelve a számítógép alapértelmezés szerint. Ezután Finder'u mondják, hogy megparancsolta mappa (és csak ezen a módon: „vazallus én vazallus - nem az én vazallus”), hogy nyissa és módosítsa a nevet.

De itt az ideje, hogy menjen az elméleti megfontolások valami kézzelfogható. Itt az ideje, hogy indítsa el a Script Editor.

Mi ez applescript - az iskolában

Szótárak, szószedetek, szótárak ...

Macintosh programok támogathatják AppleScript három különböző szinten.
Scriptable - a program elvégzi a parancsokat írja le a script.
Írható - lehetséges parancsok készült felvételek a programban. Új szkript létrehozása, fuss rekord ( «Record» gomb) végez, például a Finder manuálisan szükséges intézkedéseket, rögzítés ( «stop»). Ez minden. Tehát ez nagyon kényelmes, hogy nem az üres forgatókönyvet.
Utólag - script futtatható közvetlenül a program, hogy „kapcsolódik” a menüből, vagy bármilyen tárgyat az ablakban. Ilyen program például: AppleWorks, Tex-Edit, FileMaker Pro.

Nyitott, például a Finder szótárban.

Mi ez applescript - az iskolában

A bal oldalon megjelenik egy lista az összes definiált a „feltételek”. Megjegyzés: néhány közülük dőlt. Ez - tárgyakat. Az összes többi - a csapat. Ha rákattint a kívánt szót, akkor olvassa el röviden összefoglaljuk.

Olvassa tovább. «Többes: konténerek». Többes? Mi volt tanulni angol nyelvtan? Nos, igen és nem. Már említettük, hogy AppleScript olyan közel, hogy a természetes nyelv. És ha azt akarjuk, hogy feldolgozza az összes objektum az ebbe az osztályba, akkor írja le, mint amilyennek lennie kellene az angol nyelvet, akkor sem «minden tartály» vagy «konténerek».

Mi ez applescript - az iskolában

Mint már tudjuk, az objektum tartalmazhat más objektumokat. Milyen típusú és milyen egymástól eltérő, leírása a következő részben a szótár - „Elements» (Elements). Tartály, lásd tartalmazhat tárgyak tizenöt különböző osztályok, például más konténerek, mappákat, dokumentumokat, a program fájlok, és így tovább. D. listája adott osztályának tagja lehet az a neve (név szerint), vagy a sorozatszámot (a numerikus index).

Mi ez applescript - az iskolában

Nos, végül, az utolsó részben - a „Properties» (Tulajdonságok). Itt vagyunk, az első helyen, azt látjuk, hogy az osztály a „konténer” - az örökös az osztály „Element” ( elemet [r / o]), azaz az összes tulajdonságait. De van ebben az osztályban, és néhány saját. Megjegyzés: néhány közülük vannak jelölve «[r / o]» (csak olvasható - read-only), ezek a tulajdonságok módosításához AppleScript parancs lehetetlen.

Nos, itt. Akkor már próbál írni néhány egyszerű script. Tehát ...

Ó, az alkotója!

Azt hiszem, tudom, hogy minden fájlt a Macintosh két jellegzetessége van - a típus és alkotója kód, amely lehetővé teszi Finder'u eldönteni, hogyan kell kezelni ezt a fájlt. Nem titok, és hogy gyakran - például, miután továbbítása az interneten keresztül - ezek a tulajdonságok elvesznek. Természetesen vannak olyan sok program, hogy tudja, hogyan kell megváltoztatni. De nézzük meg, hogy a saját hasznosságát, amelyek csak mi már beépítették a Mac OS.

Kezdjük a legegyszerűbb megoldás. Tegyük fel, hogy szeretnék, hogy a fájl Level.txt található a táblázatban válassza ki a típusát «SZÖVEG» és alkotója kód «ttxt» (ProstoTekst).

Válassza ki a szótárt a Finder objektum fájl. Találd meg a szükséges tulajdonságok: fájltípus és alkotója típusát. Az érték módosításához egy ingatlan, használd a «setraquo; (Set). Tehát az egész forgatókönyvet kell kinéznie:

Így, mint láthatod, akkor sem változik a rendelését fájlt (ITS) ingatlan (ebben a példában, a szó «a» ki lehet hagyni, hogy van, hogy a találkozó a csapat egyértelműen meghatározott, és anélkül, hogy ..) Vagy - Finder programot tulajdonságait módosítani az alárendelt objektum.

Nem vagyok hiú, jelezve, hogy a fájl az asztalon. Egyébként mi szükség van egy hosszú „lánc” alárendelt objektumok (olyasmi, mint «mondani kérelem«kereső»megmondani disk«Macintosh HD»megmondani mappa«tanulsága»megmondani fájlt«Level.txt»»). Vagy - a második változat a script - jelzi az út tele van. «Fájl«Macintosh HD: tanulság: Level.txt»» (Hadd emlékeztessem önöket: ahogy a Mac OS írta colon).

Nos, a forgatókönyvet írta. Úgy működik. de az ebből származó előnyöket, csak azt nem - sőt egyes a következő fájl meg kell változtatni a szöveg a forgatókönyvet. Wow, már egyszerűsítette a munkát! Szükséges lenne, hogy javítsa a programot. Tanítsd meg, hogy kérje a felhasználó hogyan kell kezelni a fájlt. Nyisd szótár Finder, nézd Itt azokat tovább! Semmi használható. Vajon az Apple tette az ilyen baklövéseket? Egyáltalán nem ...

„És nem ugyanaz, de gyöngy gombokkal?”

Script Open Architecture (OSA - Open Script Architecture) lehetővé teszi, hogy gyakorlatilag bármilyen lényeges eleme a nyelv. Természetesen, ha valaki a fáradságot, hogy írjon egy „kiegészítő» (Scripting hozzáadása vagy OSAX), amely leírja egy tárgyat, és a megfelelő parancsokat. Ezek a kiegészítések kerülnek a Scripting kiegészítések mappát System Folder (korábban - Extensions). Használd őket bármilyen script, nem számít, hogy melyik programot jelenleg parancsot.

A script így fog kinézni:

Elég hatékony programm. De vajon lehetséges, hogy ez több kényelmes? Miért fut a script egyedül, majd válassza ki a fájl nevét a párbeszéd - nem jobb használni Drag'n'Drop módszert? Minden a legjobb!

Írás cseppek

Tehát, amit akarunk, és hogyan kell elérni.

A legegyszerűbb esetben úgy fog kinézni:

A nyílt FileList - szó «a» kezdődik az eseménykezelő
- az első script is működik anélkül olyan programokat
állítsa myFile pont 1. FileList
mondd kérelem «kereső» - Most parancs Finder'om
set fájl típusát myFile a «TEXT»
set alkotója típusú myFile a «ttxt»
vége mondani
végén nyitott - ne felejtsük el, hogy meghatározza, hogy a felvezető befejeződött

Ideiglenes tárolására a lista általunk használt változó FileList. Hívás változó lehet bármilyen betű-, de kívánatos, hogy neve nem érti, mi a változó képviseli.

Mint látható, ez dolgozza fel az első elem a lista továbbítani, ha a szkript fut. És a többi? Számukra, a program egyszerűen nem figyel. Nem nehéz kitalálni, hogy mi a következő lépés az úton, hogy a tökéletesség feldolgozni azonnal egy csomó fájlokat.

Egyszer megint újra ...

Eddig az összes csapat a szkriptek végre egy-egy a sorrendben írva. Most meg kell ismételni ugyanazt a műveletet többször. Majd meg kell szervezni egy speciális szerkezet - a ciklust. Az AppleScript kell tenni a különböző parancsok. Akkor ismételje meg az előírt számú alkalommal, vagy hajtsa végre őket, amíg bizonyos feltételek teljesülése esetén. De ezek a ciklusok szinte bármilyen programozási nyelv. A mi feladatunk, tökéletes másik - „ismétlés minden elemet a listán.” Vele a forgatókönyvet a következő alakban:

Ami még hiányzik a programunk, hogy minden tekintetben profi? És ez nem elég „üzembiztos”. A „dobja” a kép a szkript lehet és mappák és parancsikonok és a munka volt csak rendes fájlokat.

Kit szeretne, válassza

Így megy át az elemeket a listán, meg kell határoznia, hogy kinek mit is. Csak akkor, ha fogott sima file - változtatni annak tulajdonságait. Dönt, hogy nem, vagy nem tenni bármely művelet lehetővé teszi, hogy egy másik vezérlő szerkezet - egy feltételes utasítás Ha. Határozzuk meg, hogy a tárgy egy mappa vagy a címkét, akkor információt szerezni róla «info» csapatban Standard kiegészítések. Az eredmény egy osztály «fájl információ» objektumot. Ez az, amit az ingatlan - „mappát?» (Mappa) és „címkét?» (Alias) - ellenőrizni fogjuk. Mert kell az elem nem volt egy mappát, és nem jelzett, a két feltétel is társult a logikai műveletet «és» (ha ez elegendő, hogy bármely körülmények - vagy az első vagy a második - élvezze egy köteg «vagy a»). Általában itt van egy script eredményeként kapott a vitát:

Ne felejtsük el, hogy meg kell menteni, mint egy alkalmazás (alkalmazás). Nos, ez minden. Az első program készen áll.

Felhívjuk figyelmét, hogy minden körülmények között az if kell megírni egy sorban. Ahhoz, hogy a programkód könnyebb olvasni, érdemes „megállapítják” hosszú sora, ahogy az ebben a példában. Ehhez nyomja meg a billentyűkombináció «Option Return». A szöveg folytatása karakter jelenik meg - «¬».

Add a Comment

Kapcsolódó cikkek