Šis gidas yra skirtas Apple gamybos Mac kompiuteriams

Labas. Jeigu nori lengvai surasti tai, ką jau rašei terminale, bet nežinai kaip, tai šis gidas yra skirtas kaip tik tau!

Viskas labai paprasta — tereikia rašyti “history”, tarpą, vadinamąjį vamzdžio ženklą “|”, tarpą bei paieškos frazę.

history | grep <SEARCH>

Naudojimosi pavyzdys:

history | grep python

Noriu sumažinti rezultatų kiekį iki 3, tuomet galiu “grep” komandai perduoti “-m” arba “--max-count” kintamąjį su 3 reikšme.

history | grep -m 3 python

Rezultatas:

63  python manage.py shell
87  python --version
88  python3 --version

Jė! Dabar galėsiu nesunkiai rasti ką jau rašiau. Kartais pagaunu save situacijoje, kai man šis funkcionalumas labai praverstų, bet man trūksta žinių kaip jį pasiekti. Taigi dabar šios bėdos nebeturėsiu!

Jeigu nori sužinoti daugiau — skaityki toliau. Jeigu tiek ir reikėjo, tuomet meski tolesnį skaitymą be sąžinės graužaties. Tačiau žemiau pariedėjus dar yra ilgesingai dailus Matildos Olkinaitės eilėraštis, tai kviečiu paskaityti jį.

Alias!

Parašyti ir “history”, ir “vamzdį”, ir “grep” ir užtrunka, ir iš pradžių gali pasirodyti daug atsiminti, todėl visuomet galime susikurti alias! Atsidarom savo terminalo aplinkos failą ir ten apsirašom alias, taigi trumpinį. Mano tai atveju tai failai ~/.zprofile arba ~/.zshrc:

alias hs="history | grep"

Gerai, dabar man reikės atsiminti tik “hs”! Ieškau jau rašytų terminale komandų su raktažodžiu “redis”:

hs redis -m 2

Atsakymas:

65  redis-server /usr/local/etc/redis.conf
66  brew install redis

Kokiais atvejais tai gali praversti?

Tai vieną dieną gali labai palengvinti darbus — kai jie bus intensyvūs komandinėje eilutėje arba grįžę iš atostogų pamiršime kaip ten tiksliai naudotis “ta” komandinės eilutės aplikacija ir kokius ten jai argumentus perdavėm ir dar kokia tvarka.

Kaip visa tai veikia?

Mūsų įrašų terminale istorija yra išsaugoma automatiškai. Ji saugoma ~/.bash_history arba ~/.zshrc_history failuose atitinkamai kokią terminalo aplinką naudojame. Visų mūsų įrašų eilutės iš šio failo ir yra pasiekiamos “history” komanda.

Patikrinti istorijos dydį galime išspausdinę “HISTSIZE” kintamąjį:

echo $HISTSIZE

Mano atveju šio kintamojo reikšmė yra 50000.

Norėdami pakeisti istorijos dydį galime šį kintamąjį perrašyti savo terminalo aplinkos faile. Mano atveju tai ~/.zshrc arba ~/.zprofile failai:

export HISTSIZE=100000

O kaip išvalyti istoriją?

Norint išvalyti istoriją galime ištrinti istorijos failą bei išvalyti laikiną istoriją perdavę “history” komandai “c” argumentą. Mano atveju ši komanda atrodo taip:

rm ~/.zshrc_history && history -c

Apribendrinimas

Išmokome lengvai surasti tai, ką jau rašėme terminale anksčiau! Tam pasinaudojome 2 programomis — “history” ir “grep”. Apsirašėm toms komandoms trumpinį (alias). Taip pat sužinojom kaip tai veikia, išmokome pakeisti istorijos dydį bei ją išvalyti. Kartu apžvelgėme atvejus, kada tai gali būti naudinga.


VAKARAS BE DARBO

Ateina vakaras ir pradeda palangėj kaukti

Ir ilgesį vadinti girgždančiu balsu.

Ir nežinai, žmogus, ko čia belaukti,

Kai melsvas ilgesys vaidenas po langu…

Ateina vakaras ir nešasi mėnulį seną,

Ir mirkčioja pro langą spinksanti žvaigždė.

Už krosnies kažin kur svirplys gyvena,

O po grindim – vikri maža pelė.

Ateina ilgesys ir seną smuiką nešas

Ir serenadą griežia po langu.

Ir kaip tu tokį svečią pavarysi

Kai jis toks liūdnas ir be to toks mandagus?

Ir darosi savęs taip baisiai gaila,

Kada palangėj griežia ilgesys.

Ir rodos tau, kad viskas – baisiai kvaila

Pelė, mėnulis ir svirplys.

Ir rodos tau, kad tu patsai lyg sukvailėjai

Ir net poetu pavirtai,

Kada, mėnulį nužiūrėjęs,

Kažko beprasmiai dūsavai.

Iš Matildos Olkinaitės dienoraščio


Šaltiniai

Šį labai naudingą know-how mane pamokė kolega ir šios džiaugsmingos progos įkvėptas parašiau šį trumpą gidą. Gidas paremtais labiausiai įvertintais StackOverflow ir AskUbuntu atsakymais bei Linux žinynu.