Chì sò Linux Metteilaccii E Cumu Use Us

Sicondu Wikipedia, un metacharacter hè qualellu carattere chì hà un significatu especial, cum'è un carat (^), signu di dòrica ($) o un asterisk (*).

In termini di Linux, ci sò un certu nùmeru di questi metamcarculi è i so significati diferendu secondu u quale u prugramma o u prugramma chì viaghja.

A Full Stop As A Metacharacter (.)

U umiliu hè tutale per donate a pusizione attuale à i ghjorni cumandamenti cum'è cd , find o sh, ma in l'applicazioni cum'è awk , grep è sedu hè utilizatu per denota qualcunu.

Comu esempiu, u cumandimu seguitu truvà tutti i schedari mp3 in u carpeta attuale è quì sottu.

truvà. -name * .mp3

Sè guardi chì cumandà in u cartulare di u travagliu (pwd) pudete esse probabilmente risultati rimettii, fendu chì ferma i vostri mp3 files in una carpeta di musica in u cartulare di casa.

Aghjeria à questu cumandamentu:

ps -ef | grep f..efox

U cumandamentu di ps lista tutte i prucessi chì travaglia in u vostru urdinatore. U cumandru grep adopta ligne di l'input è cerca un mudellu.

Perchè u cumandamentu ps -ef cumpriu una lista di i prucessi chì currinu è li dete à grep chì cerca per ogni linea in a lista chì ha f..fuga unni a. pò significà alcune carattere.

Se avete u running firefox vi ricevi un match. Inoltru, sì avete un programe chjamatu phonefox o running freefox chì anu tornatu.

L'asterisco com'è un metacharacter (*)

L'asteriscenu hè un metàmechje più universalmente famosa è hè stata utilizata per significari 0 o più quandu cercate un mudellu.

Per esempiu:

truvà. -name * .mp3

* .mp3 torna una match per qualsiasi filename chì finiscenu in .mp3. Inoltre, puderia avè usatu l'asterisccu cù u cumandru grep cum'è quì sottu mostra:

ps -ef | grep F * efox

Hè nutate chì questa difiere duce perchè l'asteriscenu significa cero o più, è cusì ancu truvà Firefox, faculu è fonefox pudete truvà flutefox, ferretfox è ancu fefox.

U Carat As A Metacharacter (^)

U carat (^) hè utilizatu per denote u principiu di una linea o di una stringa. E quantu hè adupratu?

U cumandimu hè usatu per listinu tutti i schedari in un cartulare cumu seguitu:

ls

Se vulete sapè tutti i schedari in un cartulare chì accumincia cun un stringu stringu cum'è «gnome», u quellu chì pò esse usatu per esemplà quella stringa.

Per esempiu:

ls | grep ^ gnome

Nota chì questu solamente lista files chì partenu da u GNOME. Se vulete arquivi chì anu un gnome in u filename in ogni locu, pudete torna più à daretu à l'asteriscenu.

In l'altru esempiu, u ls torna una lista di nomini di filename è passa chì lista à grep chì hè utilizatu per cunnessione di patch. Grep sapi chì u simbolu carat significa alcune di qualcosa chì accummenta cù i caratteri chì ghjè dopu, è in stu casu, hè un gnome.

U simbulu di dòursu cum'è un metacharacter ($)

U simbulu di doppia pò esse parechje significati cum'è metàchju in Linux.

Quandu s'apprachisce cù e patruneghjate alcuni significa l'uppostu di u caratu è denota un patronu chì finiscinu cù una stringa particular.

Per esempiu:

ls | grep png $

Questu Liste tutti i file chì finiscinu cù PNG.

U simbulu di dùvuru hè ancu usatu per accede à varià di l'embiu di l'ingiru à u bash shell.

Per esempiu:

Can export dog = molly
echo $ dog

A cummerciu di esse di l'esigenza = molly crea una varianti d'ambiente chjamata cane è stabilisce u so valore à molly. Per accessu à l'embiu di l'ambiente, u simbulu $ hè utilatu. Cù u sìmbulu $ the echo $ statement dog affirmate molly, ma senza ellu, u stissu dirittu di cane si mostra a cane parolle.

Scaricate mettechule

Certe volte ùn voi micca u mecharacteristicu avè un significatu specialu. Chì si avete un schedariu chjamatu f.refox è un schedariu chjamatu firefox.

Aghjurnà à u cumandimu seguitu:

ls | grep f.refox

Chì pensate hè tornatu? Tant f.refox e firefox sò ritornu, perchè ei cunnevanu cù u patronu.

Per rinvià solu f.refox vo avete bisognu à scappari di u puntu in fine chì significheva un puntu sestu da quì:

ls | grep f \\. refox

Half Metacharacters è i Sò Significà

Lista di Linux Metacharacters
Carattere Meaning
. Ogni caratteru
* Zero o più caratteri
^ Match ogni linea o stringe chì cumincianu cun un patronu (ie ^ gnome)
$ Match ogni linea o stringe finisci cù un mudellu (ie gnome $)
\ Escapi u caratteru vicinu per rinfurzà u so significatu specialu
[] Partitu una di una lista o scala (per esse "abc", "def") o [1..9]
+ Partitu una o più di precedente (ie grep a +)
? Match zero o un precedente