Héj

A Linux Bash History előnyeinek kihasználása

A Linux Bash History előnyeinek kihasználása

Linux parancssor - a terminál, mint minden héj, a felhasználó által korábban végrehajtott parancsok előzményeit őrzi. Ez az előzmények tartósak, és akkor is a memóriában maradnak, ha újraindítjuk a rendszerünket. Ezeket a tárolt parancsokat a legoptimálisabb módon hívhatjuk elő és használhatjuk fel a legtöbb kagyló előzménymentési funkciójának hatékony használatához.

A Linux bash egy nagyon hatékony paranccsal érkezik. Ez a parancs egy beépített bash parancs, amelyet a Linux felhasználók által az összes korábbi munkamenetben végrehajtott parancsok előzményeinek kinyerésére használnak. Ebben az oktatóanyagban lehetővé fogjuk tenni, hogy a lehető legjobban kihozza a héj előzményeit azáltal, hogy megtanulja az előzmények parancs megfelelő használatát. A Linux egy felhasználó parancsparaméterét tárolja egy fájlban ~ /.bash_history alapértelmezés szerint.

Az oktatóanyagban említett parancsok futtatásához a Linux Terminal alkalmazását fogjuk használni.

A teljes előzmény megtekintése

A felhasználó megtekintheti a shell-parancsainak teljes előzményeit a kizárólag az adott felhasználó számára mentett előzményfájlból a következő egyszerű paranccsal:

$ előzmények

Az előzmények a következő alapértelmezett formátumban kerülnek kinyomtatásra a képernyőn:

A fenti képen láthatja az összes parancs listáját, mindegyikhez rendelve egy számot. Az 1-es parancs megegyezik az első futtatott paranccsal, az utolsó pedig a legutóbb végrehajtott parancsot jelenti.

Ha sok parancsot futtattál a bash használata óta, akkor észreveheted, hogy ezek a parancsok százak, sőt ezerek is megjelennek itt. Néhány releváns parancs eléréséhez szűrheti az előzmények szolgáltatás által megjelenített eredményeket. Testreszabhatja az előzmények parancsot is, hogy egy adott számú parancsot megjelenítsen az Ön számára.

Az előzmények kimenetének szűrése

Ha az előzmények kimenetét egy olyan kulcsszó alapján szeretné szűrni, amelyet az előző parancsokban esetleg használt, akkor az előzmények parancsot az alábbiak szerint használhatja:

$ előzmények | grep [kulcsszó]

Példa: Ebben a példában csak azokat a ping parancsokat szeretném megtekinteni, amelyeket valaha a futtatásban futtattam. Ezért a következő parancsot fogom használni:

$ előzmények | grep ping

Láthatja, hogy a kimenetemben csak a parancsok jelennek meg, beleértve a „ping” Advertisement keresési kulcsszavamat is

Legutóbbi parancsok megtekintése

Megtekinthet egy adott számú parancsot is, például:

VAGY

N Legutóbbi parancsok száma

A legutóbb futtatott parancsok meghatározott számát a következő paranccsal tekintheti meg:

$ előzmények | farok -n

Példa:

Ebben a példában a legutóbbi 3 futtatott parancsot szeretném megtekinteni a „ping” kulcsszóval:

$ előzmények | grep ping | farok -3

A kimenet csak a 3 legutóbbi ping parancsot jeleníti meg a teljes előzmény helyett

N A legrégebbi parancsok száma

A legrégebbi futtatási parancsok meghatározott számát a következő paranccsal tekintheti meg:

$ előzmények | fej -n

Példa:

Ebben a példában a legrégebbi 3 futtatott parancsot szeretném megtekinteni a „ping” kulcsszóval:

$ előzmények | grep ping | fej -3

A kimenet csak a 3 legrégebbi ping parancsot jeleníti meg a teljes előzmény helyett

Sorolja fel az összes parancsot dátummal és időbélyegzővel

Ha meg szeretné tekinteni a parancs előzményeit a dátummal és az időbélyegzővel együtt, használja a következő export parancsot:

$ export HISTTIMEFORMAT = "% F,% T"

Most, ha meg szeretné tekinteni az előzményeket, futtassa az előzmények parancsot a kimenet megjelenítéséhez a következő formátumban:

Felhívjuk figyelmét, hogy ez a formátumbeli változás ideiglenes, és a munkamenet bezárásakor visszaáll az előző szabványra.

Navigálás a parancsokban az előzményekből

Amíg a parancssorban van, navigálhat a korábban futtatott parancsokban, és néhány kulcsszó megadásával felidézheti a közelmúltban használt parancsokat is.

Lapozás a parancsok között

A következő billentyűzetvezérlőkkel navigálhat az előzmények parancsai között

Felfelé nyíl / Ctrl + PEzekkel a vezérlőkkel megjelenítheti az előző parancsot. Ezeket a vezérlőket többször is eltalálhatja, ha vissza szeretne térni az előzmények egy adott parancsához.
Le nyíl / Ctrl + NEzekkel a vezérlőkkel megjelenítheti a következő használt parancsot. Ezeket a vezérlőket többször is megnyomhatja, ha előre szeretne lépni az előzmények egy adott parancsára.
Alt + RHa az előzményekből kihúzott parancsot szerkeszti egy aktuális soron, akkor ezzel a vezérlővel visszaállíthatja az eredeti parancsra.

Parancsok felidézése

A következő vezérlőkkel előhívhatja, futtathatja vagy eldöntheti, hogy nem futtat-e egy adott parancsot az előzményekből:

Ctrl + REzzel a vezérlővel előhívhat egy parancsot az előzményekből, ha megad egy keresési karakterláncot.
Ctrl + OEzzel a vezérlővel futtathatja a Ctrl + R billentyűkombinációval előhívott parancsot
Ctrl + GEzzel a vezérlővel kiléphet az előzményekből anélkül, hogy futtatná a Ctrl + R billentyűvel előhívott parancsot

Példa:

Ebben a példában megnyomtam a ctrl + R billentyűkombinációt, majd megadtam az 'ar' keresési karakterláncot. Az előzmények az 'arch' parancsot jelenítették meg.

Amikor az 'arch' parancsot a ctrl + O billentyűk lenyomásával futtattam, megjelenítette a rendszerem CPU architektúráját:

A Bash History felhasználása

A bash történelem valódi varázsa különféle parancsok használata és az előzmények parancsának testreszabása, hogy a lehető legjobban kihasználja az előzmények funkcióját:

Parancsok futtatása az előzményekből

$ !#

Példa:

Itt futtatom az előzményeimből a 95-ös parancsot:

$ !95

A kimenet az 'lscpu' eredményét jeleníti meg, amely a bash előzményeimben 95-ös parancsként szerepelt. Ez a parancs megjeleníti a CPU és az operációs rendszer specifikációit.

$ !!

Példa:

Itt láthatja, hogy futtattam az 'arch' parancsot. A fent említett parancs futtatásával a következő módon futtathatom az 'arch' parancsot a CPU-architektúrám megtekintéséhez:

$ ![kulcsszó]

Példa:

A következő paranccsal fogom újra futtatni az utolsó parancsot, benne a „dconf” kulcsszóval:

$ !dconf

A következő képen újra megerősítheti, hogy ez volt az utolsó futtatott dconf parancs.

Az előző parancsok érveinek használata

A Linux bash lehetővé teszi egy új parancs futtatását az előző parancs argumentumainak felhasználásával. Különösen hasznos, ha el akarja kerülni a hosszú vagy bonyolult viták újbóli beírását. Erre a célra a következő parancsot használhatja:

Az előző parancs utolsó argumentumának használata

$ [Command] !$

A változó !A $ az utolsó parancsot tartalmazza az előző parancsból.

Példa:

Ebben a példában egy hosszú nevű fájlt hozok létre.

Nano [longnameOfaFile]

Ezután átmásolom egy másik helyre, elkerülve a hosszú név újbóli beírását az alábbiak szerint:

Cp !$ [rendeltetési mappa]

Láthatja, hogy a változó használatával másolni tudtam egy fájlt a fájlnév újragépelése nélkül !$

Az előző parancs első argumentumának használata

Előfordul, hogy a jelenlegi parancsban csak az előző parancs első argumentuma hasznos.

Ebben az esetben a következő parancsot használhatja:

$ [parancs] !^

Példa:

A következő példában a ping parancsot úgy futtattam, hogy argumentumként megadtam a gazdagép nevét és a számlálást. Most a hostnevet (első argumentum) akarom használni az 2-es (az utolsó argumentum) helyett az új parancsomban. Erre a célra a következő parancsot fogom használni:

$ ping !^

Az előző parancs összes argumentumának felhasználása

Használhatja az előző parancs összes argumentumát a következő paranccsal:

$ !*

Az előzmények parancsának egyik argumentuma

Az előzményeiből származó parancsokat az argumentumaik újbóli felhasználásával is felhasználhatja. Erre a célra használja a következő parancsot:

$ [parancs] ![kulcsszó]: #

Példa:

$ visszhang !cp: 2

Ez a parancs a következő paramétereket veszi fel:

parancs: visszhang

Kulcsszó: cp

#: 2 (a parancs második argumentuma)

A következő kimenet mutatja az utolsó futtatott cp parancs 2. argumentumát:

Az előzmények parancs összes argumentumának használata

A következő parancs tárolja a keresett előzmények parancs összes argumentumát, és felhasználja őket az aktuális parancsban:

$ parancs ![kulcsszó]: *

Példa:

A következő parancsban az echo parancs használatával kinyomtatom az utolsó cp parancs összes argumentumát:

$ visszhang ![cp]: *

Korábbi parancsok módosítása és futtatása

Ha rosszul írt be egy parancsot, vagy újra akarja futtatni a parancsot úgy, hogy megváltoztat benne néhány szöveget; ennek módja a következő:

$ ^ [previoustext] ^ [newtext]

Példa:

A „grep” parancsot „gep” -ként helytelenül írtam, és most a szöveg javításával akarom futtatni a parancsot:

$ ^ gep ^ grep

Most láthatja, hogy a javított parancsom az alábbiak szerint fog megfelelően futni:

Előzmények törlése

A bash előzményeinek törléséhez használja a következő parancsot:

$ előzmények -c

Ez a parancs törli az előzményeket, és eltávolítja az összes tartalmat a fájlból ~ /.bash_history

Ebben az oktatóanyagban megtanultuk, hogy bár a teljes előzménytartalom nyomtatása nem biztos, hogy hasznos, a kimenet optimalizálása a megtanult parancsok segítségével az igazi játékváltó. A cikk gyakorlása lehetővé teszi a kívánt parancsok megtekintését, a parancsok újrafuttatását és újrafelhasználását, valamint a korábban futtatott parancsok argumentumainak felhasználását az újak optimalizálásához.

A legnépszerűbb Oculus App Lab játékok
Ha Oculus fülhallgató-tulajdonos, akkor tisztában kell lennie az oldalsó töltéssel. Az oldaltöltés a nem áruházi tartalom fejhallgatóra történő telepí...
A legjobb 10 játék az Ubuntuban
A Windows platform a játékok egyik domináns platformja volt, mivel a játékokat hatalmas százalékban fejlesztik ma a natív Windows támogatására. Kihívh...
5 legjobb arcade játék Linuxhoz
Manapság a számítógépek komoly gépek, amelyeket játékra használnak. Ha nem sikerül megszerezni az új magas pontszámot, akkor tudni fogja, mire gondolo...