Naučite se Linuxa

Ukaz History v Linuxu s primeri

Ukaz History v Linuxu s primeri

Ukaz history v Linuxu ni zapleten žargon. Je točno takšen, kot mislite, da je, in za njim ni nobenega skritega pomena. Na enak način kot po dolgem dnevu v internetu gledate na zgodovino brskalnika, tako dojemate ukaz zgodovine. Gre predvsem za sledenje vašim prejšnjim gibom in dejanjem, vendar je v tem primeru v terminalu ali ukazni vrstici Linux.

Zato lahko udobno določimo ukaz history pod domeno Linux kot način predogleda predhodno izvedenih ukazov. V tem primeru lahko na terminal gledamo kot na brskalnik, v katerem izvajate različne ukaze v neprekinjenem časovnem okviru. Ti izvršeni ukazi se posamezno razlagajo kot dogodki. Nato se vsakemu dogodku dodeli številka dogodka. Zato imamo ukaze z id-ji kot številke dogodkov, shranjene v zgodovinski datoteki po izvedbi terminala.

Pomembnost ID-jev dogodkov je očitna, ko boste pozneje morda morali priklicati določen ukaz, ki ste ga izvedli. Prav tako boste morda želeli spremeniti predhodno izveden ukaz. Zato lahko zaključimo uvodno razumevanje ukaza history, da na terminalu prikažemo vse predhodno izvedene ukaze ali samo določen ukaz. Prav tako ne smemo pozabiti na izvedljivo možnost spreminjanja navedenega ukaza.

Naj se zgodovina ponovi

Ta zgodovinski članek lahko začnemo na zabaven način in z citiranjem Georgea Santayane. Ta slavni posameznik povezuje nezmožnost spominjanja preteklosti s prekletstvom, da bi jo ponavljal. Ko pa stopimo v vesolje Linuxa, se ta citat šteje le za mit. To je zato, ker je filozofija Linuxa resnično nasprotna navedenim citatom Georgea Santayane. Če se na terminalu Linux ne spomnite preteklega dejanja, ga ni treba skrbeti, ker je verjetnost, da se bo kdaj razpletlo.

Če seveda ne postanete mojster ukaza za zgodovino Linuxa, potem lahko potujete v preteklost in popravite svoje prejšnje grehe na terminalu, če je to vaša želja. Uporaba ukaza za zgodovino Linuxa nikakor ni povezava z lenobo. Z učinkovitostjo prihrani čas. Ko napredujete v obvladovanju operacijskega sistema Linux, boste našli delo z daljšimi in zapletenimi ukazi. Tudi če primerjate svoj inteligenčni kvocient s tistim Alberta Einsteina, ne boste imeli časa zapomniti si vseh ukazov, ki jih izvedete, in kmalu začeti delati strašne napake. Delo na terminalu Linux bo posameznika izpostavilo dvema vrstama napak:

Ukaz zgodovine si lahko predstavljate kot ninja bojevnika, ki odpravi ti dve vrsti napak za povečanje vaše produktivnosti. Še nekaj besed, preden začnemo z vadnico, ukaz za zgodovino Linuxa vsebuje več kot samo uporabo puščične tipke gor. Z našim pristopom boste videti bolj profesionalno.

Vnesite Linuxov ukaz History

Zagon ukaza history je tako preprost kot vnos besede history na vašem terminalu Linux. Zato zaženite terminal in opravite ta preprost kviz o črkovanju.

zgodovino

ukaz zgodovine

Če pritisnete Enter, boste dobili seznam vseh ukazov, ki ste jih izvedli na terminalu, z njihovimi dodeljenimi ID-ji ali številkami dogodkov. Sistem oštevilčenja, ki ga uporablja terminalski vmesnik Linuxa, prikazuje najstarejši ukaz na vrhu seznama in novo vtipkani ukaz na dnu seznama. Kot lahko vidite, sem zgodovinskemu ukazu, ki sem ga pravkar vnesel, dodelil številko id 24.

seznam ukazov zgodovine

Razmislite o scenariju zelo aktivnega terminala Linux. Če bi na tem terminalu vnesli ukaz history, bi bil rezultat recimo seznam 500 ukazov, shranjenih v zgodovinski datoteki. Ukaz history je torej koristen pri filtriranju določenega združenega segmenta ukazov. Recimo, da si želimo ogledati zadnjih 10 ukazov, izvedenih na terminalu. Pot skozi terminal bomo filtrirali tako, da vtipkamo naslednje.

zgodovina 10

zadnjih deset ukazov v zgodovinski datoteki

Kot lahko vidite, je ukaz 'history 10' filtriral zadnjih deset ukazov, uporabljenih na tem terminalu, in jih navedel na našem terminalu z vključitvijo v ukaz 'history 10'.

To je eden od načinov za dosego tega cilja. Drug neroden način za to je, če iz ukaza zgodovine iztisnete drug ukaz, imenovan tail command. Vnesite naslednji ukaz, kot je prikazano na spodnjem posnetku zaslona.

zgodovina | rep -n 10

z uporabo ukaza tail za prikaz zadnjih desetih ukazov v zgodovinski datoteki

Ukaz vsebuje tudi zadnjih 10 izvršenih ukazov na terminalu Linux, vključno s tistim, ki smo ga pravkar izvedli.

Pravzaprav ponavljajoča se zgodovina

Čas je za zabaven del uporabe ukaza history. Kaj pa, da začnemo s tem, da pustimo, da se zgodovina ponavlja. Ker ste seznanjeni z ukazi zgodovine in z njimi povezanimi ID-ji dogodkov, se vrnimo na terminal. Če želite ponoviti posebej naveden ukaz, si zapišite ID dogodka in se posmehnite naslednjemu ukazu, kot je prikazano na posnetku zaslona. Med tipkanjem ukaza ne uporabljajte presledkov.

!17

uporaba ID-ja dogodka za izvajanje prejšnjega ukaza

V mojem primeru sem si želel ogledati datoteko Linux / etc / host in bil pozvan k geslu za preverjanje pristnosti. Takoj ko so mi potrdila, se je ukaz izvršil sam.

izvršen ukaz v zgodovinski datoteki

Obstaja tudi primer, ko želite ponoviti prejšnji ukaz, ki ste ga izvedli. Doseganje tega cilja je enostavno, kot če vtipkate dva klicaja na terminalu. Ne uporabljajte presledkov.

!!

ponovno izvajanje prejšnjega ukaza

ponovno izveden ukaz zgodovine

Kot lahko vidite, nas je ukaz vrnil v datoteko Linux / etc / host, ki sem jo prej odprl. Ukaz dvojnega klicaja je trajal, da sem ponovno uporabil moj prejšnji ukaz, ki se je izvršil sam. Morda ste bili navajeni tipke s puščico navzgor, ki je zahtevala, da izvedete dve akciji, se enkrat pomaknete navzgor in nato pritisnete gumb za vnos. Vendar je ukaz dvojnega klica bolj hiter in profesionalen, saj morate izvesti samo eno dejanje.

Ker ukaz, ki sem ga uporabil, zahteva privilegije Sudo, lahko pred dvojnikom klicajev pred ukazom Sudo dobim enak pričakovani rezultat.

sudo !!

ukvarjanje z ukazom o zgodovini Sudo

En klicni klic v kombinaciji z ID-jem dogodka bo izvedel prikazani ukaz, vezan na ta ID. Dvojni klicaj vam omogoča, da izvedete svoj zadnji uporabljeni ukaz z možnostjo predpona ukaza pred Sudo, če za izvajanje zahteva uporabnika sudoer.

Morda boste svojo nergavost dvignili na naslednjo stopnjo in želeli način, kako ponoviti svoje trird ali 6th prejšnji ukaz. V tem primeru si boste morali zabeležiti ID dogodka, povezan z ukazom. Nato boste ID dogodka združili z vezajem in enim klicajem, kot sledi.

!-21

izvajanje katerega koli prejšnjega ukaza v zgodovinski datoteki

Po mojem koncu sem se želel vprašati o svojih 21 letihst prejšnji ukaz in izkazalo se je, da gre za zahtevo za ping za moj IP naslov localhost. Uporaba tega zaporedja ukazov je koristna, če želite preveriti predhodno izveden ukaz in ugotoviti, ali so parametri, s katerimi ste ga izvedli, še vedno veljavni ali ne pristranski.

Ukazni nizi

Recimo, da ste na terminalu izvedli nekaj ukaza, vendar ga niste popolnoma zapomnili. Ste pa prepričani v učinkovitost ukaza in kako vam je pomagal. Poznavanje dela niza, ki sestavlja ta ukaz, je zelo koristno. V mojem primeru sem zelo prepričan, da sem enkrat zagnal ukaz za posodobitev sistema. Recimo, da si tega ukaza za posodobitev sistema še ne moram zapomniti v celoti, vendar vem, da del ukaza vsebuje niz 'apt' kot začetno besedilo ukaza. Če želite ponovno uporabiti ta ukaz, vtipkam v svoj terminal naslednji ukaz. Ker pa je za večino ukazov za posodobitev sistema potrebno pooblastilo uporabnika sudoerja, pred ukazni niz, ki ga želim uporabiti, pred Sudom dodam Sudo.

sudo !apt

ukaz zgodovine z nizi

Kot lahko vidite, sem sistem Linux uspešno posodobil iz ukazne vrstice, ne da bi uporabil celoten ukaz 'sudo apt update'. Ta kramp iz ukaznega priročnika za zgodovino Linuxa je koristen pri obravnavi daljših ukazov, ki bi jih bilo morda dolgočasno vnašati ali bi lahko povzročili mučno tipkarsko napako. Morda urejate datoteko, katere relativna pot ustvari daljši ukaz, ali samo kopirate datoteke. Kakor koli že, za recikliranje ponavljajočih se ukazov potrebujete pristop brez stresa.

Ker smo se dotaknili vidika avtorizacije uporabnikov sudoer, bomo morda na koncu udarili v zid, če nismo previdni. Za izvedbo večine ukazov privilegiranih uporabnikov sudoer bo potrebna predpona Sudo. Zato vnesite nizni ukaz, na primer '!sudo 'za ukaze, ki se začnejo s Sudo, morda ne bo dovolj, saj lahko vodi do izvajanja neželenega zaporedja ukazov. Vendar lahko varnostno mrežo zagotovimo z uporabo parametra: p, ki je modifikator tiskanja. Zato bi združevanje našega ukaza string z njim prineslo rezultate, kot so naslednji.

!sudo: str

history z modifikatorjem tiskanja

Ukaz je natisnil razpoložljive ukaze Sudo, ki sem jih pravkar uporabil. Če želite ponovno uporabiti ta ukaz, bom uporabil tipko s puščico navzgor in za njegovo izvajanje pritisnil enter. Če bi na seznamu bilo več kot en ukaz Sudo, bi še vedno uporabil tipko s puščico navzgor za navigacijo do določenega ukaza Sudo, ki sem ga želel ponovno uporabiti.

To niso vse možnosti, ki jih imamo pri obravnavanju nizov. Obstaja tudi primer, ko poznate samo določen niz, definiran v ukazu, ki ga želite uporabiti. To je primer, ko niste prepričani v prve nize, ki definirajo ukaz, ki ste ga prej uporabili. Tu boste uporabili klicaj in vprašaj, da boste našli svoj ukaz.

!?ping

izvajanje določenega ukaza iz zgodovinske datoteke skozi nize

Uporabil sem!?ping 'zaporedje ukazov, ki je takoj izvršilo mojo prejšnjo zahtevo za ping. To zaporedje lahko uporabite za izvajanje prejšnjih ukazov na terminalu, ki so edinstveni za druge.

Interaktivno iskanje

Predpostavimo, da imate več prejšnjih ukazov, ki ste jih izvedli, in imajo podobna ali ujemajoča se zaporedja nizov. Od vseh teh ujemajočih se znakov boste morda želeli v tem pregibu izvršiti samo določeno zaporedje ukazov. Interaktivno iskanje vam omogoča, da pridete do tega enega ukaza, ki ga želite izvršiti. Za začetek interaktivnega iskanja kombinirajte tipki Ctrl + r. Zaslon vašega terminala Linux bi moral biti podoben spodnjemu.

ukaz zgodovine in interaktivno iskanje

Preprosto vnesite iskalni namig za ukaz, ki ga morate izvesti. V mojem primeru sem vtipkal 'apt' in kot vidite, se je pojavilo med apostrofom in backtick-om. Vnesete lahko več namigov o iskanem ukazu in interaktivno iskanje bo nenehno posodabljalo povezane rezultate. S pritiskom na tipko takoj najdete najdeni ukaz.

posodobitev sudo apt

z uporabo interaktivnega iskanja

Poleg tega boste morda želeli najden ukaz urediti, preden ga izvedete. Za to uporabite puščici leve in desne tipkovnice. Najdeni ukaz se bo zdaj prikazal na terminalu, kjer boste lahko izvedli potrebne spremembe.

posodobitev sudo apt && cd FOSSLinux

urejanje interaktivnega iskanja

Brisanje zgodovinskih ukazov

Do zdaj lahko iz zgodovinske datoteke pridobivate, poizvedujete, posodabljate in izvajate ukaze. Morda pa iščete način, kako izprazniti seznam zgodovine nekaterih ali vseh njegovih ukazov. Mogoče ste tisti tip uporabnika, ki ne želi, da bi kdo spremljal, kako je uporabljal svoj sistem Linux. Parameter -d vam pomaga, da se znebite nekaterih neželenih ukazov v zgodovinski datoteki. V mojem primeru moja zgodovinska datoteka vsebuje napačno črkovan ukaz s številko id 44.

iskanje zgodovine ukaz za brisanje

Da se znebim tega napačno črkovanega ukaza, bom na svojem terminalu naredil naslednje.

zgodovina -d 44

z uporabo ID-ja dogodka za brisanje ukaza zgodovine

Ponovni zagon ukaza 'history' kaže, da je bil napačno črkovan ukaz izbrisan.

potrditev brisanja ukaza history

Možnost brisanja ne velja samo za en ukaz, saj zajema tudi vrsto ukazov. Na primer, upoštevajte naslednji ukaz.

zgodovina -d 10 20

Ta ukaz bo izbrisal vnose v datoteko zgodovine iz ID-ja dogodka 10 v ID dogodka 20. Še en zgodovinski ukaz, ki ga je treba upoštevati, je naslednji.

zgodovina -d -6

Ta ukaz se bo znebil zadnjih šestih ukazov, ki ste jih vnesli na terminalu, shranjenem v zgodovinski datoteki.

Če želite počistiti vse s seznama datotek z zgodovino, se lahko posmehujete temu ukazu.

zgodovina -c

počisti vse ukaze zgodovine

Zaključek

Zdaj imate vse potrebne informacije za odločitev, ali se zgodovina terminala ponavlja ali ne. Za napredne uporabnike obstajajo primeri, ko lahko aplikacijo zaženete prek terminala in boste pozvani, da za seboj pustite sled občutljivih informacij. Datoteka z zgodovino hrani tudi tako občutljive podatke. Zato je dobra praksa, da svojo zgodovinsko datoteko vedno izbrišete pred izhodom iz ukazne vrstice, zlasti v primerih, ki vodijo do shranjevanja občutljivih podatkov. Ukaz history vam daje moč, da podoživite lepe trenutke na terminalu in popravite tudi svoje pretekle napake ukazne vrstice.

Namestite najnovejši Dolphin Emulator za Gamecube & Wii v Linux
Dolphin Emulator vam omogoča igranje izbranih iger Gamecube in Wii na osebnih računalnikih Linux (PC). Dolphin Emulator je prosto dostopen in odprtok...
Kako uporabljati GameConqueror Cheat Engine v Linuxu
Članek zajema vodnik o uporabi varalnice GameConqueror v Linuxu. Številni uporabniki, ki igrajo igre v sistemu Windows, pogosto uporabljajo aplikacijo...
Najboljši emulatorji igralne konzole za Linux
V tem članku bo navedena priljubljena programska oprema za emulacijo igralne konzole, ki je na voljo za Linux. Emulacija je sloj združljivosti program...