[Linux] Wildcards — partea I

Wilcard-urile sunt simboluri care reprezinta unul sau mai multe caractere.

 
* reprezinta orice caracter
? reprezinta un singur caracter

Stiu, ca nu intelegeti prea multe dar o sa intelegeti imediat. Haideti sa facem niste exemple.

cp file* dir1
Ce va face ? Va copia toate fisierele care incep cu file si continua cu orice caracter/serie de caractere, Daca avem file1.txt file2.txt le va copia in directorul 1

rm * Va sterge orice fisier din directorul curent.

Daca vrem sa copiem toate fisierele indiferent de nume, dar cu extensia .txt? Simplu.
cp *.txt dir1
* -> Inseamna tot, orice caracter, orice fisier, etc. Ati prins ideea

Acum sa vorbim si despre caracterul ?
Acest simbol reprezinta un singur caracter.
cp file?.txt dir1
Asta inseamna ca va copia fisierele/fisierul file?.txt in dir1. Acel ? inseamna ca poate fii orice caracter, nu imi pasa de acel caracter, daca v-om avea de exemplu file21.txt nu o va copia deoarece ? cauta doar dupa un singur caracter si va trebui sa avem specificat in cp file??.txt dir 1 ca sa caute dupa 2 caractere.
Acum ca incheiere a tutorialului va voi arata ? si * in aceeasi comanda.
rm f?le*.txt
Va elimina fisierul/fisierele care incep cu litera f urmatorul caracter nu imi pasa de el deci va fi, dupa acel caracter va contine literele le. Iar dupa aceea poate sa contina orice caractere dar sa se termine .txt
De exemplu daca avem in directorul respectiv
file1.txt
fzle3223.txt
fyle323.txt
fzle123.txt
Le va elimina pe toate pentru ca indeplineste conditile. incep cu litera f, urmatoarea nu conteaza, sunt urmate de literele le, dupa aceea iar nu conteaza urmatoarele caractere si se termina .txt

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s