Istorijos komanda „Linux“ nėra sudėtingas žargonas. Tai yra būtent tai, ką jūs manote, ir už jo nėra jokios paslėptos prasmės. Taip pat, kaip jūs žiūrite į savo naršyklės istoriją po ilgos dienos internete, suvokiate istorijos komandą. Viskas yra apie ankstesnių judesių ir veiksmų stebėjimą, tačiau šiuo atveju tai yra „Linux“ terminale arba komandinėje eilutėje.
Todėl mes galime patogiai apibrėžti „Linux“ domeno istoriją komandą kaip būdą peržiūrėti anksčiau įvykdytas komandas. Šiuo atveju mes galime žiūrėti į terminalą kaip į naršyklę, kurioje vykdote įvairias komandas nepertraukiamai. Šios vykdomos komandos atskirai interpretuojamos kaip įvykiai. Tada kiekvienam įvykiui priskiriamas įvykio numeris. Todėl mes turime komandas su ID, kaip įvykių numerius, saugomus istorijos faile po jų terminalo vykdymo.
Įvykio ID reikšmė akivaizdi, kai vėliau gali tekti prisiminti konkrečią vykdomą komandą. Be to, galbūt norėsite modifikuoti anksčiau įvykdytą komandą. Todėl galime užbaigti istorijos komandos įvadinį supratimą, kad terminale būtų rodomos visos anksčiau įvykdytos komandos arba tik konkreti komanda. Be to, neturėtume pamiršti perspektyvios galimybės pakeisti išvardytą komandą.
Leisti istorijai pasikartoti
Šį istorinį straipsnį galime pradėti linksmai ir cituodami George'ą Santayaną. Šis garsus asmuo nesugebėjimą prisiminti praeities sieja su jo kartojimo prakeiksmu. Tačiau kai žengiame į „Linux“ visatą, ši citata kvalifikuojama tik kaip mitas. Taip yra todėl, kad „Linux“ filosofija yra realiai priešinga nurodytai George'o Santayanos citatai. Būdami „Linux“ terminale, jei negalite prisiminti praėjusio veiksmo, nereikia jaudintis dėl to, nes tikimybė yra tai, kad jis visada atsiras.
Jei, žinoma, netapsite „Linux“ istorijos komandos meistru, galėsite keliauti laiku į praeitį ir ištaisyti ankstesnes terminalo nuodėmes, jei tai jūsų noras. „Linux“ istorijos komandos naudojimas jokiu būdu nėra tingumo asociatyvas. Tai taupo laiką efektyvumo dėka. Žengdami įvaldę „Linux“ operacinę sistemą, pastebėsite, kad dirbate su ilgesnėmis ir sudėtingesnėmis komandomis. Net jei palyginsite savo intelekto koeficientą su Alberto Einšteino, neturėsite laiko prisiminti visų vykdomų komandų ir netrukus pradėti daryti baisių klaidų. Dirbant prie „Linux“ terminalo, asmeniui gali kilti dviejų tipų klaidos:
-
- Viena klaida: ši klaida yra labiausiai paplitusi, ir viskas, ko ji daro, trukdo tęsti komandą, kurią norite vykdyti.
-
- Antroji klaida: ši klaida yra gudrybė. Jis vykdys jūsų inicijuotą komandą, tačiau duos netikėtų rezultatų.
Istorijos komandą galite galvoti kaip apie nindzių karį, kuris naikina šias dvi klaidas, kad padidintų jūsų produktyvumą. Gerai pagalvojus prieš pradedant pamoką, „Linux“ istorijos komanda turi daugiau nei vien tik naudodama klaviatūros rodyklę aukštyn. Mūsų požiūris leis jums atrodyti profesionaliau.
Įveskite „Linux“ komandos komandą
Komandos istorija inicijavimas yra toks pat paprastas, kaip ir „Linux“ terminale įvesti žodžių istoriją. Taigi paleiskite savo terminalą ir atlikite šią paprastą rašybos viktoriną.
istorija
Paspaudę „Enter“, gausite visų komandų, kurias vykdėte terminale, sąrašą su jiems priskirtais ID ar įvykių numeriais. Numeravimo sistema, kurią naudoja „Linux“ terminalo sąsaja, sąrašo viršuje vaizduoja seniausią komandą, o sąrašo apačioje - naujai įvestą komandą. Kaip matote, istorijos komandai, kurią ką tik įvedžiau, buvo priskirtas ID numeris 24.
Apsvarstykite labai aktyvaus „Linux“ terminalo scenarijų. Jei šiame terminale įvestume komandą istorija, išvestis būtų, tarkime, 500 komandų, išsaugotų istorijos faile, sąrašas. Taigi istorija istorija yra naudinga filtruojant nurodytą grupuotą komandų segmentą. Tarkime, kad norime peržiūrėti paskutines 10 komandų, vykdytų terminale. Filtruosime kelią per terminalą įvesdami toliau pateiktą informaciją.
istorija 10
Kaip matote, komanda „history 10“ filtravo paskutines dešimt šiame terminale naudotų komandų ir išvardijo jas mūsų terminale įtraukiant į komandą „history 10“.
Tai yra vienas iš būdų pasiekti šį tikslą. Kitas nerdy būdas tai padaryti yra ištrinti istorijos komandą su kita komanda, vadinama uodegos komanda. Įveskite šią komandą, kaip nurodyta toliau pateiktoje ekrano kopijoje.
istorija | uodega -n 10
Komandoje taip pat pateikiamos paskutinės 10 vykdomų komandų „Linux“ terminale, įskaitant tą, kurią ką tik įvykdėme.
Iš tikrųjų kartojama istorija
Atėjo laikas naudoti įdomią istorijos komandos dalį. Ką daryti, jei iš tikrųjų leidžiame istorijai pasikartoti. Kadangi esate susipažinę su istorijos komandomis ir su jomis susijusiais įvykių ID, grįžkime prie terminalo. Norėdami pakartoti konkrečiai nurodytą komandą, atkreipkite dėmesį į jos įvykio ID ir tyčiokitės iš šios komandos, kaip parodyta ekrano kopijoje. Nenaudokite tarpų rašydami komandą.
!17
Mano atveju norėjau peržiūrėti „Linux / etc / host“ failą ir manęs paprašė įvesti autentifikavimo slaptažodį. Kai tik mano įgaliojimai buvo patvirtinti, komanda pati įvykdė.
Taip pat yra atvejis, kai norite pakartoti ankstesnę komandą, kurią vykdėte. Šį tikslą pasiekti yra taip pat lengva, kaip įvesti du šauktukus savo terminale. Nenaudokite tarpų.
!!
Kaip matote, komanda nukreipė mus atgal į anksčiau atidarytą „Linux / etc / host“ failą. Reikėjo dvigubos šauktuko komandos, kad būtų galima pakartotinai panaudoti ankstesnę mano komandą, kurią įvykdė pati. Galbūt jūs buvote pripratęs prie klaviatūros rodyklės aukštyn klavišas, kuris reikalavo atlikti du veiksmus, vieną kartą slinkti aukštyn ir tada paspausti mygtuką Enter. Tačiau dvigubo šauktuko komanda atrodo greitesnė ir profesionalesnė, nes jums reikia atlikti tik vieną veiksmą.
Kadangi naudota komanda reikalauja „Sudo“ privilegijų, savo dvigubus šauktukus galiu įrašyti prieš „Sudo“ komandą, kad gautumėte tą patį laukiamą rezultatą.
sudo !!
Vienas šauktuko skaičius kartu su įvykio ID vykdys rodomą komandą, susietą su tuo ID. Dvigubas šauktukas leidžia atlikti naujausią komandą su galimybe prefiksuoti komandą „Sudo“, jei reikia, kad „sudoer“ vartotojas įvykdytų.
Taip pat galite pakelti savo neragumą į kitą lygį ir norėti, kaip pakartoti savo 3rd arba 6tūkst ankstesnė komanda. Tokiu atveju turėsite atkreipti dėmesį į įvykio ID, susietą su komanda. Tada derinsite įvykio ID su brūkšneliu ir vienu šauktuku taip.
!-21
Aš norėjau paklausti apie savo 21-eriusšv ankstesnę komandą ir paaiškėjo, kad tai yra mano vietinio kompiuterio IP adreso užklausa. Šios komandos sekos naudojimas yra naudingas, kai norite priešpriešinti anksčiau įvykdytą komandą ir nustatyti, ar parametrai, kuriuos naudojote jai vykdyti, vis dar galioja ar nėra šališki.
Komandos eilutės
Tarkime, jūs įvykdėte tam tikrą komandą savo terminale, bet jūs ne iki galo įsimenate komandą. Tačiau esate tikras dėl komandos efektyvumo ir kaip ji jums padėjo. Labai naudinga žinoti eilutės dalį, kuri sudaro šią komandą. Mano atveju esu labai tikras, kad vieną kartą paleisiu komandą, kad atnaujinčiau savo sistemą. Tarkime, aš dar neužmiršau šios sistemos atnaujinimo komandos, bet žinau, kad komandos dalyje eilutė „apt“ yra pradinė komandos formuluotė. Norėdami vėl naudoti šią komandą, aš įveskite šią komandą savo terminale. Tačiau kadangi daugumai sistemos naujinimo komandų reikėjo sudoer vartotojo autorizacijos, aš prieš komandų eilutę, kurią noriu naudoti, pridėsiu su Sudo.
sudo !taiklus
Kaip matote, sėkmingai atnaujinau savo „Linux“ sistemą iš komandinės eilutės nenaudodamas visos „sudo apt update“ komandos. Šis „Linux“ istorijos komandų vadovo įsilaužimas yra naudingas, kai sprendžiamos ilgesnės komandos, kurias gali būti varginantis įvesti arba kurios gali sukelti klaidinančią klaidą. Galite redaguoti failą, kurio santykinis kelias sukuria ilgą komandą, arba tiesiog kopijuojate failus. Bet kokiu atveju, norint pakartotinai naudoti pakartotines komandas, jums reikia požiūrio be streso.
Kadangi palietėme sudoer vartotojų autorizacijos aspektą, galų gale atsitrenksime į sieną, jei nebūsime atsargūs. Daugumai komandų iš privilegijuotų sudoer vartotojų reikės priešdėlio „Sudo“. Todėl įveskite eilutės komandą kaip „!sudo 'komandoms, kurios prasideda Sudo, gali nepakakti, nes tai gali sukelti nepageidaujamą komandų seką. Tačiau apsauginį tinklą galime suteikti naudodami parametrą: p, kuris yra spausdinimo modifikatorius. Todėl sujungus mūsų eilutės komandą su ja turėtų būti gaunami tokie rezultatai kaip toliau.
!sudo: p
Komanda išspausdino galimas „Sudo“ komandas, kurias ką tik naudojau. Norėdami pakartotinai naudoti šią komandą, naudosiu klaviatūros rodyklę aukštyn ir paspausiu „Enter“, kad ją įvykdyčiau. Jei sąraše būtų rodoma daugiau nei viena „Sudo“ komanda, aš vis tiek naudosiu rodyklės aukštyn klavišą, norėdamas pereiti prie konkrečios „Sudo“ komandos, kurią norėjau pakartotinai naudoti.
Tai ne visos galimybės, kurias turime kalbėdami apie stygas. Taip pat yra atvejis, kai jūs žinote tik tam tikrą eilutę, apibrėžtą komandoje, kurią norite naudoti. Tai atvejis, kai nesate tikri dėl pirmųjų eilučių, apibrėžiančių anksčiau naudojamą komandą. Čia norėdami surasti komandą, naudosite šauktuką ir klaustuką.
!?ping
Aš naudojau!?ping 'komandų seka, kuri akimirksniu įvykdė mano ankstesnę ping užklausą. Šią seką galite naudoti ankstesnėms savo terminalo komandoms, kurios yra unikalios kitiems.
Interaktyvi paieška
Tarkime, kad turite keletą ankstesnių komandų, kurias vykdėte, ir jose yra panašios arba atitinkančios eilutės sekos. Iš visų šių atitikimo ženklų galbūt norėsite įvykdyti tam tikrą komandų seką toje klostėje. Interaktyvi paieška leidžia jums pasiekti šią komandą, kurią norite vykdyti. Norėdami pradėti interaktyvią paiešką, sujunkite klavišus „Ctrl“ + r. „Linux“ terminalo ekranas turėtų atrodyti panašiai kaip žemiau.
Tiesiog įveskite komandos, kurią reikia vykdyti, paieškos raktą. Mano atveju aš įrašiau „apt“ ir, kaip matote, jis pasirodė tarp apostrofo ir užpakalinės dalies. Galite įvesti daugiau eilutės užuominų apie užklausiamą komandą, o interaktyvi paieška nuolat atnaujins susijusius rezultatus. Paspaudus „Enter“, vykdoma rasta komanda.
sudo apt atnaujinimas
Be to, prieš vykdydami galite redaguoti rastą komandą. Norėdami tai padaryti, naudokite kairę ir dešinę klaviatūros rodykles. Rasta komanda dabar pasirodys terminale, kur galėsite atlikti reikiamus pakeitimus.
sudo apt update && cd FOSSLinux
Ištrinamos istorijos komandos
Kol kas galite nuskaityti, pateikti užklausas, atnaujinti ir vykdyti komandas iš istorijos failo. Tačiau galbūt ieškote, kaip ištuštinti kai kurių ar visų jos komandų istorijos sąrašą. Galbūt jūs esate tokio tipo vartotojas, kuris nenori, kad kas nors stebėtų, kaip jie naudojo savo „Linux“ sistemą. Parametras -d padeda atsikratyti kai kurių nepageidaujamų komandų istorijos faile. Mano atveju mano istorijos faile yra neteisingai parašyta komanda su įvykio ID numeriu 44.
Norėdami atsikratyti šios neteisingai parašytos komandos, savo terminale atliksiu šiuos veiksmus.
istorija -d 44
Dar kartą paleidus komandą „istorija“, paaiškėjo, kad klaidingai parašyta komanda buvo ištrinta.
Ištrinimo parinktis taikoma ne tik vienai komandai, nes ji taip pat apima daugybę komandų. Pavyzdžiui, apsvarstykite šią komandą.
istorija -d 10 20
Ši komanda ištrins istorijos failo įrašus nuo įvykio ID 10 iki įvykio ID 20. Kita istorijos komanda, į kurią reikia atsižvelgti, yra tokia.
istorija -d -6
Ši komanda atsikratys paskutinių šešių komandų, kurias įvedėte terminalo faile, saugomame istorijos faile.
Jei norite išvalyti viską iš istorijos failų sąrašo, galite pajuokauti šią komandą.
istorija -c
Išvada
Dabar turite visą reikiamą informaciją, kad galėtumėte nuspręsti, ar jūsų terminalo istorija turėtų kartotis, ar ne. Pažengusiems vartotojams yra atvejų, kai galite paleisti programą per terminalą ir gali būti paraginti palikti neskelbtinos informacijos pėdsakus. Istorijos faile taip pat saugomi tokie neskelbtini duomenys. Todėl gera praktika visada išvalyti istorijos failą prieš išeinant iš komandinės eilutės, ypač tais atvejais, kai saugomi neskelbtini duomenys. „History“ komanda suteikia jums galių iš naujo išgyventi gerus laikus terminale ir ištaisyti ankstesnes komandinės eilutės klaidas.