Ljuska

Izvlačenje najboljeg iz povijesti Bash Linuxa

Izvlačenje najboljeg iz povijesti Bash Linuxa

Linux naredbeni redak - Terminal, kao i sve ljuske, čuva povijest naredbi koje je korisnik izvršio u prošlosti. Ova je povijest postojana i ostaje u memoriji čak i kad ponovno pokrenemo sustav. Te pohranjene naredbe možemo opozvati i ponovo koristiti na najoptimalniji način za učinkovitu upotrebu značajke spremanja povijesti većine školjaka.

Linux bash dolazi s vrlo moćnom naredbom koja se naziva "povijest". Ova je naredba ugrađena bash naredba, koja se koristi za izdvajanje povijesnih podataka o naredbama koje su izvršavali korisnici Linuxa u svim prethodnim sesijama. U ovom uputstvu omogućit ćemo vam da izvučete najbolje iz povijesti školjke naučivši pravilno korištenje naredbe history. Linux pohranjuje povijest naredbi za određenog korisnika u datoteku ~ /.bash_history prema zadanim postavkama.

Koristiti ćemo aplikaciju Terminal Linux za pokretanje naredbi spomenutih u ovom vodiču.

Pregled cijele povijesti

Korisnik može pregledati cjelokupnu povijest svojih naredbi ljuske iz datoteke povijesti spremljene isključivo za tog korisnika pomoću sljedeće jednostavne naredbe:

$ povijest

Povijest će se ispisati na ekranu u sljedećem zadanom formatu:

Na gornjoj slici možete vidjeti popis svih naredbi s brojem dodijeljenim svakoj od njih. Naredba broj 1 odgovara prvoj naredbi koju ste izvršili, a zadnja numerirana naredba predstavlja najnoviju naredbu koju ste izvršili.

Ako ste izvodili mnogo naredbi otkako ste koristili bash, primijetit ćete da će ovdje biti prikazano stotine, pa čak i tisuće tih naredbi. Da biste pristupili nekoliko relevantnih naredbi, možete filtrirati rezultate prikazane značajkom povijesti. Također možete prilagoditi naredbu povijesti da prikaže određeni broj naredbi za vas.

Filtriranje povijesnih rezultata

Ako želite filtrirati izlaz povijesti na temelju određene ključne riječi koju ste možda koristili u prethodnim naredbama, naredbu povijesti možete koristiti na sljedeći način:

$ povijest | grep [ključna riječ]

Primjer: U ovom primjeru želim vidjeti samo naredbe ping-a koje sam ikad pokrenuo u ljusci. Stoga ću upotrijebiti sljedeću naredbu:

$ povijest | grep ping

Možete vidjeti da moj izlaz sada prikazuje samo naredbe, uključujući moju ključnu riječ za pretraživanje "ping" Advertisement

Pregled broja nedavnih naredbi

Također možete pregledati određeni broj naredbi, na primjer:

ILI

N Broj nedavnih naredbi

Možete vidjeti određeni broj nedavno pokrenutih naredbi putem sljedeće naredbe:

$ povijest | rep -n

Primjer:

U ovom primjeru želim pregledati posljednje 3 naredbe koje sam pokrenuo, s ključnom riječi 'ping':

$ povijest | grep ping | rep -3

Izlaz prikazuje samo 3 nedavne ping naredbe umjesto cijele povijesti

N Broj najstarijih naredbi

Možete vidjeti određeni broj najstarijih naredbi pokretanja putem sljedeće naredbe:

$ povijest | glava -n

Primjer:

U ovom primjeru želim pregledati najstarije 3 naredbe koje sam pokrenuo, s ključnom riječi 'ping':

$ povijest | grep ping | glava -3

Izlaz prikazuje samo 3 najstarije naredbe pinga umjesto cijele povijesti

Navedite sve naredbe s datumom i vremenskom oznakom

Ako želite pregledati povijest naredbi zajedno s datumom i vremenskom oznakom, upotrijebite sljedeću naredbu izvoza:

$ export HISTTIMEFORMAT = "% F,% T"

Sada kada želite pregledati povijest, samo pokrenite naredbu history da biste vidjeli izlaz u sljedećem formatu:

Napominjemo da je ova promjena formata privremena i vratit će se na prethodni standard kada zatvorite sesiju.

Navigacija naredbama iz povijesti

Dok ste na naredbenom retku, možete se kretati kroz prethodno pokrenute naredbe, a također se prisjetiti nekih nedavno korištenih naredbi tako što ćete navesti ključnu riječ.

Pomicanje kroz naredbe

Za navigaciju kroz naredbe povijesti možete koristiti sljedeće kontrole tipkovnice

Strelica prema gore / Ctrl + PPomoću ovih kontrola možete prikazati prethodnu naredbu koju ste koristili. Možete više puta pritisnuti ove kontrole da biste se vratili na određenu naredbu u povijesti.
Strelica prema dolje / Ctrl + NPomoću ovih kontrola možete prikazati sljedeću naredbu koju ste koristili. Možete više puta pritisnuti ove kontrole da biste prešli na određenu naredbu u povijesti.
Alt + RAko u trenutnoj liniji uredite naredbu koju ste izvukli iz povijesti, pomoću ove kontrole možete je vratiti u izvornu naredbu.

Pozivajući se na naredbe

Možete se pozvati, pokrenuti ili odlučiti da ne pokrenete određenu naredbu iz povijesti pomoću sljedećih kontrola:

Ctrl + RPomoću ove kontrole možete pozvati naredbu iz povijesti tako što ćete navesti niz pretraživanja.
Ctrl + OPomoću ove kontrole možete pokrenuti naredbu koju ste opozvali putem Ctrl + R
Ctrl + GPomoću ove kontrole možete izaći iz povijesti bez pokretanja naredbe koju ste opozvali putem Ctrl + R

Primjer:

U ovom sam primjeru pritisnuo ctrl + R, a zatim pružio niz za pretraživanje 'ar'. Povijest je prikazala naredbu 'arch'.

Kad sam pokrenuo naredbu 'arch' pritiskom na ctrl + O, prikazala je CPU arhitekturu mog sustava:

Korištenje povijesti Bash

Prava čarolija povijesti basha je upotreba raznih naredbi i prilagođavanje same naredbe povijesti kako bi se značajka povijesti najbolje iskoristila:

Pokretanje naredbi iz povijesti

$ !#

Primjer:

Ovdje pokrećem naredbu broj 95 iz svoje povijesti:

$ !95

Izlaz prikazuje rezultat 'lscpu' koji je naveden kao broj naredbe 95 u mojoj povijesti basha. Ova naredba prikazuje moje specifikacije CPU-a i operativnog sustava.

$ !!

Primjer:

Ovdje možete vidjeti da sam pokrenuo naredbu 'arch'. Izvođenjem gore spomenute naredbe mogu ponovno pokrenuti naredbu 'arch' kako bih pogledao svoju CPU arhitekturu na sljedeći način:

$ ![ključna riječ]

Primjer:

Upotrijebit ću sljedeću naredbu za ponovno pokretanje posljednje naredbe u kojoj je ključna riječ 'dconf':

$ !dconf

Na sljedećoj slici možete ponovno potvrditi da je to zadnja dconf naredba koju sam pokrenuo.

Korištenje argumenata iz prethodnih naredbi

Linux bash omogućuje pokretanje nove naredbe pomoću argumenata iz prethodne naredbe. Posebno je korisno kada želite izbjeći pretipkavanje dugih ili složenih argumenata. U tu svrhu možete upotrijebiti sljedeću naredbu:

Koristeći zadnji argument iz prethodne naredbe

$ [Naredba] !$

Varijabla !$ sadrži zadnji argument iz prethodne naredbe.

Primjer:

U ovom primjeru stvorit ću datoteku s dugim imenom.

Nano [longnameOfaFile]

Zatim ću ga kopirati na drugo mjesto izbjegavajući ponovno upisivati ​​dugo ime na sljedeći način:

Cp !$ [odredišna mapa]

Možete vidjeti da sam uspio kopirati datoteku bez ponovnog upisivanja naziva datoteke pomoću varijable !$

Koristeći prvi argument iz prethodne naredbe

Ponekad je samo prvi argument iz prethodne naredbe koristan u trenutnoj.

U tom slučaju možete upotrijebiti sljedeću naredbu:

$ [naredba] !^

Primjer:

U slijedećem primjeru pokrenuo sam naredbu ping navodeći ime hosta i count kao argumente. Sada želim koristiti ime hosta (prvi argument), a ne 2 (zadnji argument) u svojoj novoj naredbi. U tu svrhu upotrijebit ću sljedeću naredbu:

$ ping !^

Koristeći sve argumente iz prethodne naredbe

Također možete koristiti sve argumente iz prethodne naredbe pomoću sljedeće naredbe:

$ !*

Koristeći jedan argument iz naredbe povijesti

Također možete koristiti naredbe iz svoje povijesti ponovnom upotrebom njihovih argumenata. U tu svrhu upotrijebite sljedeću naredbu:

$ [naredba] ![ključna riječ]: #

Primjer:

$ odjek !k.č .: 2

Ova naredba će uzeti sljedeće parametre:

naredba: jeka

Ključna riječ: k.č

#: 2 (drugi argument naredbe)

Sljedeći izlaz prikazuje 2. argument posljednje cp naredbe koju sam pokrenuo:

Koristeći sve argumente iz naredbe povijesti

Sljedeća naredba pohranit će sve argumente iz naredbe pretraživane povijesti i koristiti ih u trenutnoj naredbi:

$ naredba ![ključna riječ]: *

Primjer:

U sljedećoj naredbi ispisat ću sve argumente posljednje cp naredbe pomoću naredbe echo na sljedeći način:

$ odjek ![cp]: *

Izmjena i pokretanje prethodnih naredbi

Ako ste pogrešno upisali naredbu ili želite ponovno pokrenuti naredbu promjenom teksta u njoj; sljedeći je način za to:

$ ^ [prethodni tekst] ^ [novi tekst]

Primjer:

Naredbu 'grep' pogrešno sam upisao kao 'gep' i sada želim pokrenuti naredbu ispravljajući tekst:

$ ^ gep ^ grep

Sada možete vidjeti da će se moja ispravljena naredba pravilno izvoditi kako slijedi:

Brisanje povijesti

Da biste izbrisali povijest svog basha, upotrijebite sljedeću naredbu:

$ povijest -c

Ova naredba će obrisati vašu povijest i ukloniti sav sadržaj iz datoteke ~ /.bash_history

U ovom uputstvu naučili smo da, iako ispis cijelog sadržaja povijesti možda neće biti toliko koristan, optimiziranje rezultata putem naredbi koje smo naučili pravi je mjenjač igre. Vježbanje uz ovaj članak omogućit će vam da pogledate točne naredbe koje želite, ponovno ih pokrenete i ponovno upotrijebite, a također ćete koristiti argumente iz prethodno pokrenutih naredbi za optimizaciju novih.

Luke komercijalnih igara s otvorenim kodom
Besplatne igre s otvorenim kodom i više platformi mogu se koristiti za igranje starih, kao i nekih prilično nedavnih naslova igara. U ovom će se člank...
Najbolje igre naredbenog retka za Linux
Naredbeni redak nije samo vaš najveći saveznik pri korištenju Linuxa - on također može biti izvor zabave jer ga možete koristiti za igranje mnogih zab...
Najbolje aplikacije za mapiranje gamepada za Linux
Ako volite igrati igre na Linuxu s gamepadom umjesto tipičnim sustavom za unos tipkovnice i miša, za vas postoji nekoliko korisnih aplikacija. Mnoge r...