ebben A kezdő -, baráti útmutató, megyünk végig a építőkövei Mac scripting, aztán majd meglátjuk, hogy a parancsfájlok segítségével a mobil eszköz menedzsment (MDM) megoldás lehet hatékonyabban kezelheti a társaság tulajdonában lévő eszközök.
itt van egy gyors áttekintést néhány téma fogjuk fedezni:
- mik szkriptek?
- szkriptek használata MDM megoldással
- Terminal parancsok vs. Shell szkriptek
- mik azok a kagylók: Bash vs. Zsh?,
- basics of Scripting with bash
mik azok a szkriptek?
a szkriptek olyan kis számítógépes programok, amelyek egy sor parancsot gyűjtenek egy fájlba. Míg a parancsok beírása az Apple termináljába általában egyenként történik, egy szkript segítségével a parancsok hosszú listáját csak egy interakcióval hajthatja végre.
bár általában nem használ Mac szkripteket nagyobb programok készítéséhez, használhatja őket a rutin számítógépes viselkedés automatizálására. Például, ha van egy időigényes rutin, hogy vesz egy csomó kattintás, akkor írj fel egy script csinálni csak egy.,
Az Apple jól helyezi a Shell Scripting Alapozójába:
a shell szkript írása olyan, mint a kerékpározás. Először leesel, és a térded is lekaparod. Egy kicsit több tapasztalattal, akkor lesz kényelmes lovaglás őket a városban, hanem gyorsan felfedezni, hogy miért a legtöbb ember autót vezetni hosszabb utazások.
Shell scripting általában tekinthető ragasztó nyelv, ideális létrehozására kis darab kódot, hogy csatlakoztassa más eszközök együtt. Míg a shell szkriptek bonyolultabb feladatokhoz használhatók, általában nem a legjobb választás.,
a szkript elsajátítása hasonló a programozási nyelv tanulásához. Az alapokkal kezded, és onnan építed fel a tudásodat.
tehát ebben az útmutatóban a szkriptek építőköveire fogunk összpontosítani. Az itt tárgyalt információk sok beállításban hasznosak lesznek, de végül arra fogunk összpontosítani, hogy a szkriptek hogyan segíthetnek több eszközön végzett műveletek végrehajtásában MDM megoldás segítségével.
mit tehetnek a szkriptek?
lényegében a szkriptek lehetővé teszik a bonyolult dolgok gyors, pontos és egyszerű elvégzését.,
- gyorsan, mert a Mac szkriptek használata MDM-ben automatizálhatja az unalmas feladatokat, mint például egy számítógépes program elérése 100 vállalati eszközön – nulla kattintással, nem pedig 100 helyett.
- pontosan azért, mert egy jó szkript minden alkalommal ugyanúgy hajt végre egy meghatározott műveletet – miközben bízik abban, hogy egy személy manuálisan elvégzi a feladatot, hibákat, következetlenségeket és zavart okozhat.
- könnyen, mert lehet elérni egy nagyon bonyolult, árnyalt feladat egy sor egyszerű szkriptek, hogy lebontják kisebb darabokra.,
MDM-megoldással rendelkező szkriptek használata
a szkriptek használata önmagában segíthet időt megtakarítani, de MDM-megoldással, mint például a Kandji termékünk, sokkal több energiát és szabadságot nyit meg. Miután megírta a kívánt szkriptet, futtathatja azt az MDM megoldáson keresztül, hogy alkalmazza azt a vállalat összes eszközére.
hogyan használják a szkripteket az MDM megoldásokban, a terméktől függően eltérőek lesznek, de a Kandji segítségével olyan dolgokra használhatja őket, mint például az egyéni alkalmazás telepítésének testreszabása, hogy megfeleljen a vállalat pontos igényeinek., (Elolvashatja az alkalmazás telepítésére vonatkozó útmutatónkat, ha erre alapozóra van szüksége.)
ebben az esetben, ha vállalkozása egyéni alkalmazást akar telepíteni az összes vállalati eszközön, megadhat bizonyos előtelepítési vagy postinstall műveleteket szkriptek hozzáadásával a megfelelő beviteli dobozokhoz (lásd az alábbi képen):
előtelepítési szkriptek
létrehozhat egy előtelepítési szkriptet, ha műveletet szeretne végrehajtani a telepítés előtt., Előtelepítési a szkriptek általában, hogy:
- Végezzen karbantartási feladat, hogy általában manuálisan újratelepítése előtt szoftver, mint például eltávolítása engedélyezési, cache, adatbázis fájlok, stb.
- konfigurációs fájlok futtatása. Sok alkalmazás tömeges telepítési lehetőségeket alkalmaz, amelyek a telepítő futtatása előtt elhelyezett konfigurációs fájlok megtalálásával működnek. Előfordulhat például, hogy egy előtelepítési szkript segítségével hoz létre egy adott mappát, majd valamilyen azonosítót tartalmazó fájlt ír be a mappába., Amikor a telepítés megtörténik, a telepítő megtalálja ezeket az információkat, majd felhasználja az alkalmazás automatikus konfigurálásához.
postinstall Scripts
postinstall szkriptet is létrehozhat, amelyet általában az alkalmazásbeállítások konfigurálására használnak a szoftver futtatása előtt. Egy közös példa megosztásához használhat egy posinstall szkriptet a Google Chrome felhasználói beállításainak konfigurálásához, valamint az automatikus frissítések konfigurálásához.,
Mint tudod képzelni, scripting ezek a viselkedések ad sokkal többet felett a telepítési folyamat, ami megmentheti a csapat egy csomó időt, ha kell, tegye meg kézzel egyébként.
egyéni szkriptek
a Kandji rendelkezik egy egyedi szkript funkcióval is, amely lehetővé teszi a macOS által támogatott szkriptek hozzáadását. Ezek a Mac szkriptek készülékenként vagy folyamatosan futtathatók. Van egy remediation script opció is, amelyet szükség esetén felvehet., A Kandji Custom Script oldalán az alábbi lehetőségek közül többet láthat:
A szkriptek építőkövei
most, hogy van egy működő definíciónk arról, hogy milyen szkriptek vannak, és tudjuk, mit tudnak elérni, tanuljuk meg, hogyan működik az egész. Ebben a részben lebontjuk a Mac szkriptek néhány fő építőelemét, beleértve a Terminálparancsokat, a shell szkripteket és két közös héjat.
mik azok a Terminálparancsok?
a terminál a macOS parancssori interfész (CLI)., Ez lehetővé teszi a felhasználók számára, hogy speciális módosításokat a Mac parancsok segítségével, amelyek csak utasításokat a Mac tekintetében, hogy mit akar csinálni.
kép forrása: support.apple.com
figyelmeztetés, bár: a terminál hihetetlenül hatékony eszköz. Alaposan tanulmányozza és tesztelje a parancsokat, mielőtt futtatná őket, és ha lehetséges, teszteljen egy virtuális géppel a gyártógép helyett.
amikor parancsokat ír be a terminálba, lehetővé teszi, hogy tolmáccsal vagy héjjal kommunikáljon. A tolmács kódot vesz fel, majd lefordítja azt olyan gépi nyelvre, amelyet az operációs rendszer meg tud érteni.,
a terminál megnyitásához kattintson az ” alkalmazások “gombra, nyissa meg a” Segédprogramok “mappát, majd kattintson duplán a” terminál ” alkalmazásra. Használhatja terminál parancsokat bármit, amit lehet elérni a GUI-és még sok más.,
Itt van néhány alapvető példák a parancsokat:
- szöveg Hozzáadása a dokumentum (ha a dokumentum nem létezik, egy új jön létre)
echo 'Welcome to my document!' > ~/Desktop/myDocument.txt
- Hogy egy mappa egy bizonyos helyen,
mkdir ~/Desktop/myFolder
- Áthelyezés, egy dokumentum egy adott helyre
mv ~/Desktop/myDocument.txt ~Desktop/myFolder
- Nyissa meg a dokumentumot egy bizonyos helyre
open ~/Desktop/myFolder/myDocument.txt
Ez egy nagyszerű módja annak, hogy hogyan lehet használni a parancsokat, hogy a Mac végre bizonyos viselkedést, de ez nem túl praktikus, ha azt szeretné, hogy végre egy sorozat, a feladatok., Látni fogjuk, hogy a szkriptek hogyan teszik ezt lehetővé a következő részben.
mik azok a Mac Shell szkriptek?
természetesen a Terminálparancsok egyesével történő csatlakoztatása elég unalmassá válik, amikor több száz vállalati tulajdonú Mac-eszközön próbál változtatásokat végrehajtani. Tehát ahelyett, hogy végrehajtaná az egyes parancsokat, mint például az utolsó szakaszban lévő példánk, az összes parancsot egy szkriptre – egy shell szkriptre – fordíthatja, amely közvetlen interakció nélkül is futtatható. Ez megkönnyíti az ismétlődő vagy többlépcsős folyamatok végrehajtását, miközben minimalizálja a hibát.,
a shell szkript csak egy unix parancsokat tartalmazó szöveges fájl (az operációs rendszerrel beszélő parancsok – a macOS egy UNIX-alapú operációs rendszer). Minden, amit tehetünk a terminál parancsokat meg tudod csinálni a Mac shell szkriptek, csak sokkal könnyebben. Még a shell szkripteket is automatizálhatja olyan eszközökkel, mint a launchd.
futtassa a Shell szkriptet: Mac terminál
valójában nagyon egyszerű a shell szkript futtatása. Ha Mac szkriptet készítenénk a fent bemutatott Terminálparancsokból, akkor ezt csak meg kell tennünk:
- Type #!/ bin / bash az első sorban., Az első két karakter, az úgynevezett “shebang” (#!), tudassa a terminállal, hogy shell szkriptet ír be. A sor többi része meghatározza, hogy a parancsfájloknak milyen shell-el kell futniuk. Ebben az esetben ez bash, de megadhatja a “zsh” – t is, amely egy másik héj, amelyet a következő szakaszban is lefedünk.
- adja hozzá a parancsokat egy szkriptszerkesztőhöz. Csakúgy, mint a szövegszerkesztők szakosodott írásban, script szerkesztők szakosodott scripting, csinál dolgokat, mint a színkódolás szavak bizonyos funkcionális kategóriák megjelölés hibák., Rengeteg forgatókönyvszerkesztő van odakint, de a népszerűbbek közül kettő (és ingyenesek) Atom és bbedit.
- mentse el ” myscript.bash ” vagy mint bármely más név – csak győződjön meg róla, hogy a fájlkiterjesztést (az időszak utáni részt) Bash-ként jelöli. Ellenkező esetben a Terminal nem tudja megfelelően futtatni.
- a terminál engedélyezése a szkript végrehajtásához. Most csak meg kell adnia a terminál engedélyét a szkript futtatásához., Ne másolja be a tartalmat – meg kell mondania a Terminal-nak, hogy a szkriptfájl végrehajtható legyen a chmod +x paranccsal, például:
chmod +x ~/Desktop/myFolder/myscript.bash
- nyomja meg az “enter” gombot a shell script futtatásához. Mac Terminálja fogja kezelni a többit!
ennyi – a program végrehajtja a parancsok listáját sorrendben. Valószínűleg gyorsabban fog megtörténni, mint amit követhet, de ez csak egy újabb előnye a Mac scriptingnek – ez nagyon gyors.,
mielőtt más dolgokról beszélne a szkriptekkel, kapjunk áttekintést arról, hogy milyen héjak vannak (mint például a “bash”, amelyet ebben a példában használtunk).
mik azok a kagylók?
a terminál megnyitásakor a rendszer shell programot indít. A héjak parancssori tolmácsok, ami egyszerűen azt jelenti, hogy beveszik a parancsokat, és az operációs rendszernek adják őket, hogy működésbe lépjenek.
alapértelmezés szerint a Mac a zsh (Z shell) vagy a Bash (Bourne-again Shell) parancsértelmezőt használja. A Mac alapértelmezett héja a használt macOS iterációjától függ.,
- zsh( Mac Catalina): ha új felhasználói fiókot hozott létre a macOS Catalina beta vagy újabb rendszeren, akkor az alapértelmezett shell a zsh. macOS iterációk használat előtt bash.
- bash (korábbi macOS): ha macOS Mojave vagy korábbi verziót használ, akkor a Bash az alapértelmezett shell.
függetlenül attól, hogy fiókja bash vagy ZHH Mac alapértelmezett héjat használ-e, néhány lépésben megváltoztathatja., Itt van, amit meg kell tennie:
- kattintson az Apple Menüre
- válassza ki a Rendszerbeállításokat > felhasználók & csoportok
- kattintson a zárolásra, majd írja be a fiók nevét és jelszavát.
- Control-kattintson a felhasználónevére a felhasználók listájában > válassza ki a speciális beállításokat
- nézze meg a “Login shell” menüt, és válasszon egy shell
- kattintson az OK gombra, ha megtalálta a kívánt héjat
Bash vs., Zsh: Mac Scripting
bash és zsh valójában sok közös vonása van, és egyikről a másikra válthat anélkül, hogy túl sok tanulási görbét ütne. Tehát, mielőtt belemennénk, mi különbözteti meg őket, nézzük meg néhány helyet, ahol átfedik egymást.
- Z parancs: a Z parancs lehetővé teszi a fejlesztők számára, hogy könnyen navigáljanak a könyvtárakban, lehetővé téve számukra egy nemrégiben vagy gyakran látogatott könyvtár látogatását a “z” beírásával, amelyet a könyvtár neve követ., Ez gyorsabb, mint a teljes hely beírása, mint amit meg kellett tennünk, amikor megnyitottuk a dokumentumot a terminál parancs részben.
- automatikus Befejezés: mindkét kagyló tartalmaz egy parancssori automatikus teljes funkciót is. A funkció használatához csak be kell írnia egy parancsot, nyomja meg a “-” gombot, majd nyomja meg a tab gombot. Megjelenik a parancs elérhető opcióinak listája, amelyen keresztül megy keresztül, amíg meg nem találja a kívánt opciót.,
- Automatikus javítás: mindkét kagyló az automatikus korrekció egyik formáját használja, de a Bash funkcióját először engedélyezni kell, míg a zsh beépített automatikus korrekciós funkcióval rendelkezik, amely automatikusan felismeri a kis betűket.
- szín-testreszabás: mind a zsh, mind a bash sok szín-testreszabási eszközt kínál, amelyek egy pillanat alatt megkönnyítik a szkript megértését.
amikor a különbségekről van szó, a Bash volt az alapértelmezett shell a macOS felhasználók számára a Catalina-ig, és ez még mindig a legszélesebb körben használt shell az informatikai rendszergazdák között., Mivel bash egy hatalmas következő, van egy csomó források odakinn, így nagy kezdőknek.
a bash a kagylók családjába tartozik, ebbe a kategóriába tartozik az sh, ash, zsh és a ksh is. Ez tele van több funkciót, mint tudjuk reálisan felsorolni itt, de néhány egyedi funkciók közé hurkoló, feltételes konstrukciók, tilde és zárójel bővítések, és álnevek.,
Zsh, Mac Catalina alapértelmezett shell, másrészről, nem olyan népszerű, mint bash, de még mindig van egy hatalmas következő, beleértve a nyílt forráskódú keretek, mint Oh My Zsh, és széles körben dicsérte a funkcionalitás. A Zsh olyan egyedi funkciókat kínál, mint a File globbing, a betölthető modulok, az útvonal bővítése, az indítási/leállítási szkriptek stb. Ebben az útmutatóban elsősorban a bash-re fogunk összpontosítani.
A Bash
alapjai most, hogy megértjük, hogyan működnek a szkriptek és a kagylók, itt az ideje, hogy áttekintsünk néhány tippet a Bash-vel történő szkriptekről., Ezután belevetjük magunkat az alapokba, mint például a változók hozzárendelése és az írási feltételek.
Word Separation
az egyik első fő építőelem, amely köré tekeri a fejét, az, hogy bash hogyan használja a szó elválasztókat. Miközben a szkript példáit nézi, látni fogja a metakaraktereket, mint például; és &. Ez csak kettő a hét karakterből,amelyeket bash a szkriptek elválasztására használ.
az alábbiakban felsoroljuk mind a hét listáját. Ha látod ezeket, ne aggódj. Mindent megszerveznek., Amint azt később a conditionals szakaszban láthatja, a használt szintaxis típusa attól függ, hogy mit próbál elérni.
- (
- )
- <
- ;
- &
>
hasznos szervezeti parancsok
bash számos parancsot is ad a fájlok rendezéséhez. Ezek közül néhányat lefedtünk a terminál parancs részben, de itt van még néhány:
- mkdir (make directory) új könyvtár vagy mappa létrehozására szolgál.,a
- MV (move)egy vagy több fájl vagy könyvtár áthelyezésére szolgál egy másik helyre.a
- RM (remove) fájlok törlésére szolgál.a
- rmdir (remove directory) könyvtár törlésére szolgál.
megtekintési parancsok
Ha többet szeretne tenni, mint a fájlok áthelyezése, ezen megtekintési parancsok némelyikével láthatja a fájlok által tartalmazott információkat. Ezek közül kettő:
- cat (concatenate) beolvassa egy vagy több fájl tartalmát, majd megjeleníti azt. Ez ideális rövidebb fájlokhoz.,a
- less egy másik megtekintési parancs, amely kiválóan alkalmas hosszabb fájlok megtekintésére, mivel egyszerre csak egy információs képernyőt jelenít meg, és hasznos navigációs funkciókat tartalmaz bizonyos szavak kereséséhez vagy a következő vagy az előző oldalra lépéshez.
mik azok a változók?
a változók olyan helyőrzők, amelyek egy bizonyos értékre utalnak. Amikor beírja a változó nevét, a rendszer úgy kezeli, mintha beírta volna az általa megadott értéket. A változókat számok, betűk, fájlnevek vagy más típusú adatok segítségével nevezheti el.,
a változók megkönnyítik az egyes adatrészleteket használó szkriptek írását – még akkor is, ha ezek az adatok mindig változnak, például a felhasználónevek. Ahelyett, hogy írok külön parancsok több variáció a felhasználónevek, csak adjuk meg a felhasználónevedet változó használni, mint egy helyőrző valamennyi változatban, hogy a felhasználók használhatnak.
a változók hozzárendelése nagyon egyszerű. Csak meg kell adni egy változó nevét és egy értéket, mint így:
Variable_Name=value
a nagybetűs rész itt nem számít., A változó neve és értéke lehet csak arról, amit akarsz, mint például:
x=1
var1=hello
var2=GOODBYE
hogy az említett, van néhány korlátozás, hogy milyen szavakat vagy karaktereket lehet használni a változók (amit mi fedezi a következő). De először is fontos megjegyezni, hogy a bash nem használ szóközöket az egyenlő jel előtt vagy után változók hozzárendelése közben.,
ez azt jelenti, Hogy nem lehet hozzá egy változó, a terek, mint ez:
Helytelen:
x = 1
az, hogy rendelje szóközök nélkül, így:
Helyes:
x=1
Azonban használható terek változó nevek használatával idézetek, így:
Helyes:
x="Number one"
Meg kell említeni, hogy tudod használni a Mac script mondani Terminál vissza a változó értékét kell. Ezt kétféleképpen teheti meg., Mindkét példa az “x” változó értéket, amit keres:
$x
${x}
azt is, Hogy egy változó lásd az eredménye, hogy egy parancs, mint például:
variable1=$(Some Bash Command)
Változó Korlátozások
Szóval, mik azok a változó korlátozások mi csak említeni? Bash húsz “fenntartott szó”, hogy nem tudja használni a változók, mert ők már hozzá vannak rendelve más fontos funkciók a shell., Amikor változókat rendel, csak el kell kerülnie ezeket a szavakat, és nem fog problémákba ütközni a szkriptjével.
itt vannak:
- ! idő
- ]
- { s }
- ha, akkor, elif, más, fi
- az esetben esac
- válassza ki, majd a
- darabig, amíg az,, s kész
- függvény
Egyetlen, ill., Dupla Idézetek
'
Az egyetlen idézőjelbe ágyazott szöveg azt jelenti, hogy szigorúan tartalmazza az olvasott szöveget – nem ad értelmet semmilyen speciális karakternek, például változónak vagy változó korlátozásnak.
"
a kettős idézőjelek megőrzik egyes karakterek szó szerinti értékét, de tartalmazhatnak benne néhány változót vagy karaktert, amelyek különleges jelentéssel bírnak, beleértve:
$
'
\
!
a karakter jelentése !, a kettős idézőjelek csak akkor maradnak meg, ha a history expansion engedélyezve van, a \ – t pedig egy másik speciális karakternek (vagy egy új sornak) kell követnie.
mik azok a feltételek?
a következő nagy lépés a tanulás Mac scripting kitalálni, hogyan kell használni conditionals. Lényegében a feltételek az, ha/akkor kijelentések, amelyek meghatározzák a feltételeket, majd megnézik, hogy teljesülnek-e (azaz ha reggel 6 van, akkor mondja “Jó reggelt”).
a Bash-ben az if/then kijelentések szintaxisa így néz ki:
if <condition>; then
<command(s)>
fi
ezt lebontjuk.,
- kezdje az “if” – vel, majd azonnal kövesse a feltételeket.
- pontosvesszővel válassza el az ” IF “feltételt, majd indítsa el az” akkor ” parancsot. Ez a parancs csak akkor kerül sor, ha az “IF” feltétel teljesül.
- végül zárja be az if / then nyilatkozatot “fi” – vel-ez csak “ha” visszafelé íródott.
itt van egy példa:
if ; then
echo "That number is greater than or equal to 4"
fi
itt ellenőrizzük, hogy egy szám, 5, nagyobb vagy egyenlő – e (ez a “-ge”) egy másik szám, 4., Ha igen, akkor az” akkor “parancs végrehajtásra kerül, egy üzenettel:” Ez a szám nagyobb vagy egyenlő 4-nél.”Képzelje el, hogy az 5 megváltoztatása és egy változó használata javíthatja a szkript funkcionalitását.
miután megszerezte ezeket az állításokat, megtanulhatja, hogyan kell használni az “else” – et, hogy alternatív műveletet adjon a parancsoknak abban az esetben, ha az “if” feltételek nem teljesülnek. A bonyolultabb parancsok, akkor is használja ” elif “(máshol, ha), hogy adjunk feltételeket” else “anélkül, hogy unalmasan újraírása több” else ” feltételek.,
Scripting MDM megoldások
csakúgy, mint a Mac scripts lehet, hogy az egyes terminál parancsok erősebb, szkriptek segítségével a MDM megoldás kihozza a legteljesebb kezelési potenciál.
mindegy, hogy a mi Egyéni Script szolgáltatást, vagy meghatározza, pre -, illetve postinstall viselkedés, egyedi alkalmazások, scripting egy MDM segítségével elérni, rengeteg speciális készülék kezelési műveletek.,
Remélhetőleg megtanulta, hogy ezzel biztosítható, hogy teljes körű, többlépcsős feladatok gyorsabb, pontosabb–, valamint, hogy képes forgatókönyv speciális politikák, majd küldje el a cég minden használó eszközök egy MDM megoldás, mint Kandji.
túl üzembe a szkripteket, Kandji rengeteg más nagyszerű funkciók, mint egy kattintással való megfelelés jelentős biztonsági referenciaértékek és nulla-touch telepítés. Ez minden, amire vállalkozásának szüksége van a flotta kezeléséhez a telepítéstől a nyugdíjig.