A Bash Shell testreszabása a shopt segítségével

Ha finomhangolja a Bash shell működését a shopt segítségével, több mint 50 beállítást vezérelhet. Megmutatjuk, hogyan szabhatja testre Linux rendszerét az Ön igényei szerint.

Az üzlet beépített

A beépített shopt az összes verzió része Bash shell, így nem kell semmit telepíteni. A boltban elérhető opciók száma az évek során folyamatosan nőtt. Tehát minél régebbi a Bash verziója, annál rövidebb lesz a shopt opciók listája.

Ha úgy tűnik, hogy valami nem működik a gépén, ellenőrizze a Bash kézikönyvoldalának bejegyzését, és ellenőrizze, hogy az opció elérhető-e a shopt verziójában.

Az alábbiakban bemutatjuk az összes bolti lehetőséget. Azt is leírjuk, hogyan kell használni, és megosztunk néhány példát. Onnan megnézheti a Bash man oldalát ill GNU Bash kézikönyv hogy megtudja, ezek a lehetőségek hasznosnak vagy vonzónak hangzanak-e.

Egyes shopt-beállítások alapértelmezés szerint engedélyezve vannak, és a Bash alapértelmezett viselkedésének részét képezik. Engedélyezhet egy shopt opciót a Bash rövid távú módosításaként. Ezután visszaáll az alapértelmezett viselkedésre, amikor bezárja a shellt.

Ha azonban azt szeretné, hogy egy módosított viselkedés elérhető legyen, amikor elindít egy Bash-héjat, akkor a változtatásokat véglegessé teheti.

A shopt Options

53 bolti lehetőség közül választhat. Ha a shopt parancsot opciók nélkül használja, akkor ezeket felsorolja. Ha a kimenetet a wc parancson keresztül vezetjük, akkor ez megtörténik számolja meg a sorokat, szavakat és karaktereket nekünk. Mivel minden shopt opció a saját sorához tartozik, a sorok száma az opciók száma.

A következőket írjuk be:

shopt | wc

Az összes lehetőség megtekintéséhez a kimenetet az oszlop paranccsal átvezethetjük az opciónevek oszlopokban való megjelenítéséhez, vagy becsövezhetjük kevesebbbe is.

  Nagy frissítési gyakoriságú monitorra van szüksége irodai munkához?

A következőket írjuk be:

shopt | column

Shopt keresése a Linux kézikönyvben

A shopt és annak lehetőségeit tárgyaló rész a Linux kézikönyv Bash részében található. A Bash rész több mint 6000 soros. A shopt leírását nagy görgetéssel megtalálod, vagy egyszerűen a kézikönyvben is rákereshetsz.

Ehhez nyissa meg a kézikönyvet a Bash részben:

man bash

A kézikönyvben nyomja meg a / gombot a keresés elindításához. Írja be a következőt, majd nyomja meg az Enter billentyűt:

assoc_expand_once

A shoptoption szakasz eleje megjelenik a férfi ablakban.

Beállítási és kikapcsolási lehetőségek

A shopt opciók beállításához és hatástalanításához használja a következő parancsokat:

-s: Beállítás vagy engedélyezés.
-u: Unset vagy letilt.

Mivel egyes opciók alapértelmezés szerint engedélyezve vannak, célszerű ellenőrizni, hogy mely opciók vannak bekapcsolva. Ezt megteheti az -s és -u kapcsolókkal, opciónév használata nélkül. Emiatt a shopt listázza a be- és kikapcsolt opciókat.

Írja be a következőket:

shopt -s

shopt -u | column

Használhat egy shopt opciót az -s vagy -u parancsok nélkül, hogy megtekinthesse az egyes opciók be- vagy kikapcsolt állapotát.

Például beírhatjuk a következőket a histverify opció beállításának ellenőrzéséhez:

shopt histverify

A bekapcsoláshoz a következőket írhatjuk be:

shopt -s histverify

Ezután a következőket írhatjuk be, hogy újra ellenőrizzük:

shopt histverify

A histverify opció megváltoztatja az előzmények parancsának egyik aspektusának működését. Általában, ha arra kéri az előzményeket, hogy ismételjen meg egy parancsot úgy, hogy számmal hivatkozik rá, például !245, akkor a parancsot a rendszer lekéri a parancselőzményekből, és azonnal végrehajtja.

Ha inkább át szeretne tekinteni egy parancsot, hogy megbizonyosodjon arról, hogy az megfelel-e a vártnak, és szükség esetén módosítani szeretné, írja be a következőket a shopt histverify beállítás bekapcsolásához:

!245

A parancs lekérésre kerül és megjelenik a parancssorban. Az Enter billentyű lenyomásával törölheti, szerkesztheti vagy végrehajthatja.

Az autocd opció

Ha az autocd opció be van kapcsolva, ha beírja egy könyvtár nevét a parancssorba, és megnyomja az Enter billentyűt, a rendszer úgy kezeli, mintha a cd szót írta volna be elé.

  Hogyan készítsünk kérdőívet a Microsoft Forms-ban

A következőket írjuk be az autocd opció bekapcsolásához:

shopt -s autocd

Ezután beírjuk egy könyvtár nevét:

Documents

A cdspell opció

Ha a cdspell opció be van kapcsolva, a Bash automatikusan kijavítja az egyszerű helyesírási és elírási hibákat a könyvtárnevekben.

A következőt írjuk be a cdspell beállításához:

shopt -s cdspell

Ha kisbetűs könyvtárba akarunk váltani, amelynek kezdőbetűvel kell kezdődnie nagybetűvel, a következőket írjuk be:

cd documents

Ezután a következőket írhatjuk be, hogy megpróbáljunk egy olyan könyvtárnevet, amelynek nevében egy extra „t” van:

cd ../Picttures

A Bash minden könyvtárba módosítja a helyesírási hibákat.

Az xpg_echo opció

Ha az xpg_echo beállítás be van kapcsolva, az echo parancs engedelmeskedik a megtisztított karaktereknek, például az n az új sor és a t a vízszintes tabulátor esetén.

Először beírjuk a következőket, hogy megbizonyosodjunk arról, hogy a beállítás be van állítva:

shopt -s xpg_echo

Ezután beletesszük az n-t egy karakterláncba, amelyet az echo-nak továbbítunk:

echo "This is line onenThis is line two"

A kihagyott újsor karakter sortörést kényszerít a kimenetben.

Ez ugyanazt a viselkedést produkálja, mint az -e (lehetővé teszi a menekülési értelmezést) echo opciót, de az xpg_echo lehetővé teszi, hogy ez legyen az alapértelmezett művelet.

A dotglob opció

A dotglob opcióval óvatosan kell bánni. Lehetővé teszi a ponttal (.) kezdődő fájlok és könyvtárak névbővítésben vagy „globbing”-ben való szerepeltetését. Ezeket „pontfájloknak” vagy „pont könyvtáraknak” nevezik, és általában rejtettek. A dotglob opció figyelmen kívül hagyja a nevük elején lévő pontot.

Először megkeressük a „geek” végződésű fájlokat vagy könyvtárakat a következő beírásával:

ls *geek

A rendszer egy fájlt talál és listáz. Ezután bekapcsoljuk a dotglob opciót a következő beírásával:

shopt -s dotglob

Ugyanazt az ls parancsot adjuk ki a „geek” végződésű fájlok és könyvtárak kereséséhez:

ls *geek

Ezúttal két fájl található és listázódik, amelyek közül az egyik egy pontfájl. Óvatosnak kell lennie az rm és mv használatával, ha a dotglob opció be van kapcsolva.

  Hogyan telepítsünk ecsetet a Photoshopban

A nocaseglob opció

A nocaseglob beállítás hasonló a dotglob beállításhoz, azzal a különbséggel, hogy a nocaseglob a fájlnevekben és a könyvtárakban a kis- és nagybetűk közötti különbségeket figyelmen kívül hagyja a névbővítéseknél.

A következőket írjuk be, hogy olyan fájlokat vagy könyvtárakat keressünk, amelyek a „hogyan” szóval kezdődnek:

ls how*

A rendszer egy fájlt talál és listáz. A következőt írjuk be a nocaseglob opció bekapcsolásához:

shopt -s nocaseglob

Ezután megismételjük az ls parancsot:

ls how*

Két fájl található, amelyek közül az egyik nagybetűket tartalmaz.

Változások véglegesítése

Az általunk végrehajtott változtatások csak addig maradnak érvényben, amíg be nem zárjuk a jelenlegi Bash shellt. Ahhoz, hogy állandóvá tegyük őket a különböző shell-munkamenetekben, hozzá kell adnunk őket a „.bashrc” fájlunkhoz.

A kezdőkönyvtárba írja be a következő parancsot a „.bashrc” fájl megnyitásához a grafikus Gedit szövegszerkesztőben (vagy módosítsa megfelelően a kívánt szerkesztő használatához):

gedit .bashrc

A gedit szerkesztő megnyílik a „.bashrc” fájl betöltésével. Látni fogja, hogy néhány shopt bejegyzés már benne van.

Itt is megadhatja saját bolti lehetőségeit. Miután hozzáadta őket, mentse el a módosításokat, és zárja be a szerkesztőt. Mostantól, amikor új Bash-héjat nyit meg, a beállításokat a rendszer az Ön számára állítja be.

Lehetőségek, ameddig a szem ellát

Az igaz, hogy a shopt parancsnak sok opciója van, de nem kell egyszerre megbirkózni velük, ha egyáltalán valaha. Mivel nagyon sok van, valószínűleg vannak olyanok, amelyek nem fognak érdekelni.

Például vannak olyanok, amelyek arra kényszerítik a Bash-t, hogy bizonyos, régebbi verziókkal kompatibilis módon működjön. Ez hasznos lehet valakinek, de ez egy meglehetősen szűkös eset.

Megnézheti a Bash-t man oldal vagy GNU Bash kézikönyv. Döntse el, mely lehetőségek jelentenek változást az Ön számára, majd kísérletezzen velük. Csak legyen óvatos azokkal a beállításokkal, amelyek befolyásolják a fájl- és könyvtárnevek kibontásának módját. Próbálja ki őket egy jóindulatú paranccsal, például az ls-sel, amíg meg nem érzi őket.