Viena iš labiausiai žinomų ZSH funkcijų yra funkcijų tinkinimo ir išplėtimo galimybė naudojant išorines sistemas, papildinius, temas ir kt.
Svarbiausias ZSH tinkinimo ir konfigūravimo būdas yra naudoti ZSH konfigūracijos failą, kuris paprastai yra namų kataloge pavadinimu „.zshrc“.
Todėl pagrindinių ZSH profilio savybių mokymasis gali būti labai svarbus mokantis konfigūruoti ZSH terminalą. Nesvarbu, ar naudojate išorinę sistemą, pvz., „Oh My ZSH“, „Antigen“ ir kt., turite žinoti, kaip redaguoti ir konfigūruoti ZSH konfigūracijos failą.
Šiame vadove mes supažindinsime jus su ZSH profiliu. Tai padės nustatyti konfigūracijos sintaksę, palaikomas funkcijas, taip pat suteiks patarimų ir gudrybių, kaip pagerinti terminalo patirtį.
Įdiegti ZSH
Kaip ir kiekvienas paketas ir įrankis Unix ekosistemoje, turime užtikrinti, kad jie būtų įdiegti mūsų sistemoje.
Linux sistemose galite įdiegti ZSH naudodami numatytąjį paketų tvarkyklę, pvz., APT, skirtą Debian sistemoms, DNF ir Yum, skirtą Fedora, Pacman for Arch ir kt.
$ sudo apt-get install zshJei naudojate „MacOS“, ZSH yra numatytasis apvalkalas (atsižvelgiant į versiją) ir yra lengvai pasiekiamas. Tačiau, jei dėl kokių nors priežasčių jo neįdiegėte, galite naudoti „Homebrew“, kad įdiegtumėte taip:
$ užvirinti diegti zsh
Baigę galime sukonfigūruoti ZSH kaip numatytąjį apvalkalo interpretatorių paleidžiant. Tai galite padaryti vykdydami šią komandą:
$ chsh -s $ ( kurios zsh )Tai turėtų pakeisti numatytąjį apvalkalą į ZSH.
Suprasti ZSH profilį
Kaip minėjome, ZSH galima konfigūruoti naudojant „.zshrc“ failą. Leiskite mums pasinerti į daugiau informacijos, kas tai yra ir kaip tai veikia.
Kas yra .Zshrc?
„.zshrc“ yra „Z-shell run control“ trumpinys. Tai paslėptas failas (žymimas pirmuoju), esantis pagrindiniame kataloge (~/.zshrc).
ZSH nuskaito ir vykdo kiekvieną komandą, kuri yra apibrėžta šiame faile kiekvieną kartą, kai pradedate naują apvalkalo seansą. Tai apima naujo terminalo lango, naujo skirtuko atidarymą arba scenarijaus paleidimą ZSH.
Toliau pateikiami keli pagrindiniai „.zshrc“ failo naudojimo būdai:
- PATH konfigūravimas, aplinkos kintamųjų apibrėžimas ir kiti parametrai
- Komandų nuorodų kūrimas ir sudėtingų ar pasikartojančių užduočių funkcijų apibrėžimas
- Koregavimo ragelio išvaizdos keitimas
- Apvalkalo parinkčių nustatymas ir komandos užbaigimo elgsenos konfigūravimas
„.zshrc“ failo sintaksė iš esmės yra ZSH scenarijų kalba. ZSH yra labai panašus į Bash su keliais patobulinimais ir sintaksės pakeitimais. Norėdami sužinoti daugiau, galite peržiūrėti mūsų mokymo programą, kaip perjungti iš Bash į ZSH.
ZSH profilio pritaikymas
Pirmoji ir dažniausiai pasitaikanti užduotis dirbant su apvalkalo profiliu yra apvalkalo raginimo tinkinimas. Tai galime padaryti naudodami pabėgimo sekas ir specialius kintamuosius.
Pažvelkite į šį kodo pavyzdį:
PS1 = '%n@%m %~ %(!.#.$)'Tokiu atveju PS1 kintamasis tvarko jūsų raginimo tinkinimą. Toliau nurodyta, ką reiškia kiekvienas specialus kintamasis.
- %n – vartotojo vardas
- %m – pagrindinio kompiuterio pavadinimas
- %~ – dabartinis katalogas
- %(!.#.$) – skirtingi raginimo simboliai root (#) ir ne šakniniams ($) vartotojams
Kintamųjų nustatymas
Norėdami nustatyti kintamąjį ZSH, naudojame kintamojo pavadinimą, lygybės ženklą ir kintamojo reikšmę. Sintaksė yra tokia:
VARIABLE_NAME = 'vertė'Tada galime nurodyti anksčiau apibrėžtą kintamąjį visame scenarijuje.
Kintamųjų eksportavimas
Taip pat galime eksportuoti kintamuosius, kad jie būtų prieinami antriniams procesams dabartinės sesijos metu arba kai tik įkeliamas apvalkalas.
Pavyzdys yra toks:
eksportuoti KELIAS = '/usr/local/bin: $PATH “Pseudonimai
Kita labai naudinga ZSH funkcija yra slapyvardžiai. Slapyvardžiai iš esmės yra ilgų komandų, kurias naudojate dažniausiai, nuorodos.
ZSH galime apibrėžti slapyvardį, kaip parodyta šioje sintaksėje:
slapyvardis slapyvardis = 'command_format'Pavyzdžiui, tarkime, kad norime sukurti trumpesnę komandą komandai „ls –lah“. Pseudonimą galime sukurti taip:
slapyvardis ll = 's - tai'Funkcijos
Kitas dalykas, kurį turime žinoti, yra funkcijos. Funkcijos leidžia mums apibrėžti daugkartinio naudojimo kodo blokus, kuriuos galime vadinti kaip vieną objektą.
ZSH funkcijos apibrėžimo sintaksė yra tokia:
funkcija funkcijos_pavadinimas {#logika
}
Pavyzdžiui, tarkime, kad norime turėti funkciją, kuri gautų informaciją apie orą pateikdami užklausą. Užuot įvedę visą komandą, galime apibrėžti paprastą funkciją, kuri tai atlieka taip:
funkcija oras ( ) {curl wttr.in
}
Dabar, kai mums reikia gauti informaciją apie orą, galime tiesiog iškviesti šią funkciją ir ji atlieka visą darbą už mus.
Raktų įrišimai
Raktų susiejimas leidžia apibrėžti raktų sekų rinkinį, susietą su nurodyta operacija. Pavyzdžiui, galime sukurti spartųjį klavišą, leidžiantį ieškoti komandų istorijoje.
ZSH apibrėžiame rakto susiejimą naudodami komandą „bindkey“. Paimkite tokį pavyzdį:
bindkey '^R' istorija - prieauginė - paieška - atgalŠis pavyzdys susieja „CTRL + R“ klavišų seką su komandų istorijos paieškos funkcija.
Norėdami sužinoti daugiau tinkinimo, galite peržiūrėti mūsų mokymo programą apie ZSH raktų susiejimą.
Automatinis užbaigimas
ZSH siūlo galingą automatinį užbaigimą. Galite jį įjungti pridėdami šiuos įrašus prie konfigūracijos:
automatinis pakrovimas -Į compinitcompinit
Patarimai ir gudrybės
Toliau pateikiami keli naudingi patarimai ir gudrybės, kuriuos reikia žinoti dirbant ZSH:
Komandų istorija
Naršykite komandų istoriją naudodami sparčiuosius klavišus.
- Ctrl-R – ieškoti atgal
- Ctrl-S – ieškoti pirmyn
- Rodyklė aukštyn – ankstesnė komanda
- Rodyklė žemyn – kita komanda
Rekursyvus Globingas
Norėdami įjungti rekursinį globavimą, naudokite **. Pavyzdžiui:
aidas **/* .txtKomandų pakeitimas
Naudokite $(command), kad įterptumėte komandos išvestį į kitą komandą.
Derinimas
Norėdami derinti ZSH paleidimo problemas, naudokite „zsh –xv“, kad derintumėte „.zshrc“ failą.
Taip pat galite profiliuoti savo ZSH konfigūracijos paleidimo laiką naudodami komandą „zprof“.
Išvada
Šioje pamokoje aptarėme viską, ką reikia žinoti, kai dirbate su ZSH profiliu. Taip pat pateikėme keletą patarimų ir gudrybių, kurie gali padėti pagerinti jūsų ZSH patirtį.