Linux Metacharacters Muaj Dab Tsi Thiab Koj Siv Lawv Li Cas

Raws li Wikipedia, tus metacharacter yog txhua tus cim uas muaj lub ntsiab lus tshwj xeeb, xws li ib lub carat (^), duas kos npe ($) los yog lub hnub qub (*).

Nyob rau hauv cov nqe lus ntawm Linux, muaj ib tug xov tooj zoo ntawm cov metacharacters thiab lawv lub ntsiab txawv ntawm qhov kev hais kom ua los yog qhov kev pab cuam uas koj tau khiav.

Tag Nrho Nres Raws Li Ib Tug Metacharacter (.)

Kev txo hwjchim tag nrho yog siv los pub cov haujlwm tam sim no thaum khiav cov lus txib xws li cd , nrhiav lossis sh, tiam sis hauv cov ntawv xws li awk , grep thiab sed nws yog siv los ua kom pom txhua tus neeg.

Ua ib qho piv txwv, cov lus txib nram no yuav pom tag nrho cov mp3 ntaub ntawv nyob rau hauv daim nplaub tshev thiab hauv qab no.

nrhiav tau. Nkauj Noog Hawj * .mp3

Yog tias koj khiav cov lus txib hauv koj tam sim no ua haujlwm directory (pwd) ces koj yuav zaum tau txais rov qab, piv txwv tias yog koj khaws koj cov ntaub ntawv mp3 mp3 hauv cov nplaub tshev hauv koj phau ntawv pov thawj tsev.

Tam sim no saib cov lus txib no:

ps -ef | grep f..efox

Qhov PS hais kom ua txhua tus txheej txheem khiav hauv koj lub computer. Cov lus hais ua grep yuav siv cov tswv yim thiab kev tshawb nrhiav rau tus qauv.

Vim li no tus hais kom ua ps-2 tau txais ib daim ntawv teev cov txheej txheem khiav thiab muab rau grep uas tshawb rau txhua kab hauv daim ntawv uas muaj f..cox qhov twg. txhais tau hais tias txhua tus neeg.

Yog tias koj muaj firefox khiav koj yuav tau txais ib qho kev sib tw. Zoo sib xws, yog tias koj muaj ib lub program hu ua fonefox lossis freefox khiav lawv kuj yuav rov qab los.

Lub asterisk raws li ib tug metacharacter (*)

Lub hnub qub yog ib qho kev paub ntau tshaj plaws hauv lub ntiaj teb thiab siv los txhais tau 0 los sis ntau tshaj thaum nrhiav tus qauv.

Piv txwv li:

nrhiav tau. Nkauj Noog Hawj * .mp3

Tsis xav ua tus tom qab.wmv.mp3 Ib yam li ntawd, kuv yeej siv tau lub hnub qub nrog kev hais kom ua grep raws li nram no:

ps -ef | grep F * efox

Nws yog tsim nyog teev tias qhov no txawv me ntsis vim hais tias asterisk txhais tau tias zero los yog ntau tshaj li zoo li nrhiav firefox, facefox thiab fonefox nws kuj tseem nrhiav tau flutefox, ferretfox thiab txawm yog fefox.

Lub Carat Raws Li Ib Tug Metacharacter (^)

Lub carat (^) siv los qhia tias pib ntawm txoj kab lossis txoj hlua. Yog li cas nws siv?

Ls hais kom ua yog siv los sau tag nrho cov ntaub ntawv nyob rau hauv lub nplaub tshev li hauv qab no:

Ls

Yog hais tias koj xav paub tag nrho cov ntaub ntawv nyob rau hauv ib tug nplaub tshev uas pib nrog ib txoj hlua xws li "gnome" ces tus carat yuav siv los qhia hais tias txoj hlua.

Piv txwv li:

ls | grep ^ gnome

Nco ntsoov tias qhov no tsuas teev cov ntaub ntawv uas pib nrog gnome. Yog hais tias koj xav tau cov ntaub ntawv uas muaj ib tug gnome nyob rau hauv filename nyob qhov twg ces koj yuav rov qab rov qab rau lub hnub qub.

Hauv qhov piv txwv saum toj no, tus ls rov qab cov npe ntawm cov npe thiab cov kab ntawv uas sau rau grep uas yog siv rau kev sib txawv. grep paub tias cov cim kos cim txhais tau tias txhua yam uas pib nrog cov cim uas tuaj tom qab nws thiab qhov no, nws yog ib tus gnome.

Lub Dollar Cim Raws Li Ib Tug Metacharacter ($)

Cov cim cim tau muaj ntau lub ntsiab txhais ua ib lub ntsiab lus hauv Linux.

Thaum siv los piv cov qauv nws txhais tau hais tias cov lus sib cav kom pom thiab qhia cov qauv uas xaus nrog ib txoj hlua.

Piv txwv li:

ls | grep png $

Qhov no teev tag nrho cov ntaub ntawv uas xaus nrog png.

Lub cim cim tseem yog siv los mus saib tau cov tsiaj ntawv nyob hauv lub plhaub daim tawv nqaij.

Piv txwv li:

export dog = molly
ncha $ aub

Tus kab xa tawm dev = molly tsim ib qho chaw uas tsis paub meej hu ua dev thiab teev nws tus nqi rau molly. Mus nkag rau qhov chaw sib txawv ntawm qhov $ cim yog siv. Nrog lub cim $ tus cim nos $ daim ntawv lo lus qhia tab sis tsis muaj nws, tus ncha tsab ntawv tsuas qhia txog lo lus aub.

Escaping Metacharacters

Qee lub sij hawm koj tsis xav kom cov metacharacter muaj lub ntsiab lus tshwj xeeb. Yog tias koj muaj ntaub ntawv hu ua f.refox thiab cov ntaub ntawv hu ua firefox.

Tam sim no saib cov lus txib nram qab no:

ls | grep f.refox

Dab tsi koj xav tias rov qab? Ob leeg f.refox thiab firefox raug xa rov qab vim tias nkawd ob leeg sib phim tus qauv.

Tsuas yog xa rov tuaj rau ntawm f.refox koj yuav tsum tau khiav kom tag nrho nres kom tau txhais tias muaj tag nrho nres raws li nram no:

ls | grep f \\ refox

Cov Metacharacters Uas Lawv Lub Nkoj thiab Lawv Lub Tswv Yim

Daim ntawv teev cov Linux Metacharacters
Tsa Lub ntsiab lus
. Ib lub cim
* Zero los yog ntau dua cim
^ Hloov cov kab lossis cov hlua uas pib nrog tus qauv (ie ^ gnome)
$ Hloov cov kab los yog cov hlua xaus nrog tus qauv (ie gnome $)
Muaj Escapes tus cim tom ntej kom tshem nws cov lus tshwj xeeb
[] Hloov ib qho ntawm cov npe lossis ntau yam (xws li ["abc", "def"] lossis [1.9]
+ Hloov ib lossis ntau dua ua ntej (ie grep a +)
? Hloov xoom lossis ib qho ua ntej