‘?’ koristi se za podudaranje s bilo kojim znakom. Možeš koristiti ‘?’ više puta za podudaranje više znakova.
Primjer-1:
Pretpostavimo da želite pretraživati one tekstualne nazive datoteka čija su imena dugačka 4 znaka, a proširenje je .txt . Globbing pattern možete primijeniti pomoću ' ? ’Četiri puta za obavljanje ovog zadatka.
Saznajte popis svih datoteka i mapa trenutnog direktorija.
$ls-
Pokrenite sljedeću naredbu za pretraživanje onih datoteka čija su imena četiri znaka duga i nepoznata.
$ ls -l ????. txt
Primjer 2:
Pretpostavimo da želite pretraživati datoteke dokumenata čija su imena dugačka 8 znakova, a prva 4 znaka su f, o, o i t a proširenje je doc . Pokrenite sljedeću naredbu s globbing uzorkom za pretraživanje datoteka.
$ls -stopalo ????. doc
Primjer 3:
Pretpostavimo da znate da je naziv datoteke 'najbolje' i proširenje ima 3 znaka, ali ne znam proširenje. Pokrenite sljedeću naredbu pomoću ‘? ’Za pretraživanje svih datoteka s nazivom„ test ”s bilo kojim nastavkom od tri znaka.
$ls -najbolje.???
Zvjezdica - (*)
‘*’ koristi se za podudaranje s nulom ili više znakova. Ako imate manje podataka za pretraživanje bilo koje datoteke ili informacije, možete ih koristiti ‘*’ u šablonu.
Primjer -1:
Pretpostavimo da želite pretraživati sve datoteke u 'Pl' produžetak. Pokrenite sljedeću naredbu pomoću ‘*’ da izvrši taj zadatak.
$ls - *.pl
Primjer 2:
Pretpostavimo da znate samo početni znak naziva datoteke koji jest 'do' . Pokrenite sljedeću naredbu koristeći ‘*’ za pretraživanje svih datoteka trenutnog direktorija čiji su nazivi započeti 'do' .
$ls -do*.*
Primjer 3:
Možete primijeniti ‘*’ u bash skripti za različite svrhe bez pretraživanja datoteka. Napravite bash datoteku pod nazivom 'Check.sh' sa sljedećom skriptom. Ovdje, kada korisnik upiše ‘ y 'ili' Y 'ili' yes 'ili' yes ' zatim 'Potvrđeno' ispisat će se i kada će tip upisati 'N' ili 'N' ili 'ne' ili 'ne' zatim 'Nije potvrđeno' ispisat će.
#!/bin/bashizbaciti 'Želite li potvrditi?'
čitatiodgovor
slučaj $ odgovor u
[YY]* ) izbaciti 'potvrđeno.';;
[Br]* ) izbaciti 'Nije potvrđeno.';;
*) izbaciti 'Pokušaj ponovno.';;
esac
Pokrenite skriptu.
$bashprovjeri.sh
Uglata zagrada - ([])
‘[]’ koristi se za usklađivanje znaka iz raspona. Neke od najčešće korištenih deklaracija raspona navedene su u nastavku.
Sva velika slova su definirana rasponom kao, [: velika:] ili [A-Z].
Sva mala slova su definirana rasponom kao, [: mala:] ili [a-z].
Sve numeričke znamenke definirane su rasponom kao, [: znamenka:] ili [0-9].
Sva velika i mala slova su rasponom definirana kao, [: alpha:] ili [a-zA-z].
Sva velika slova, mala slova i znamenke definirani su rasponom kao, [: alnum:] ili [a-zA-Z0-9]
Primjer -1:
Pokrenite sljedeću naredbu za pretraživanje svih datoteka i mapa čije ime sadrži str ili što ili r ili s .
$ls - [p.s]*
Primjer 2:
Pokrenite sljedeću naredbu za pretraživanje svih datoteka i mapa čiji naziv počinje bilo kojom znamenkom od 1 do 5.
$ls - [1-5]*
Nedostaje mu - (^)
Možeš koristiti ‘^’ s uglatim zagradama za preciznije definiranje uzorka globusa. ‘^’ može se koristiti unutar ili izvan uglatih zagrada. ‘^’ Se koristi izvan uglatih zagrada za pretraživanje sadržaja datoteke koji počinje s datim rasponom znakova. ‘^’ Se koristi unutar uglatih zagrada za prikaz cjelokupnog sadržaja datoteke označavanjem redova koji počinju s datim rasponom znakova. Za pretraživanje određenog sadržaja iz datoteke možete koristiti različite vrste uzoraka globiranja. 'zahvat' naredba se koristi za pretraživanje sadržaja u bash -u. Pretpostavimo da imate tekstualnu datoteku pod nazivom 'List.txt' sa sljedećim sadržajem. Testirajte sljedeće primjere za tu datoteku.
Jabuka4000
Banana
700
naranča
850
Kruška
9000
jackdruit
Primjer - 1:
Pokrenite sljedeću naredbu za pretraživanje tih redaka list.txt datoteka koja počinje s P ili Q ili R .
$ grep '^[P-R]' list.txt
Primjer - 2:
Pokrenite sljedeću naredbu da biste istaknuli te retke list.txt datoteka koja počinje s A ili B ili C .
$ grep '[^A-C]' list.txt
Uzvični znak - (!)
Možeš koristiti '!' unutar uzorka raspona. Djeluje isto kao i uporaba simbola ‘^’ izvan uzorka raspona. Neki primjeri korištenja '!' znak su dati ispod.
Primjer - 1:
Pokrenite sljedeću naredbu da biste prikazali te retke list.txt datoteka koja počinje s ‘P’ ili Q ili R .
$ grep [! P-R] list.txt
Primjer - 2:
Pokrenite sljedeću naredbu da biste prikazali te retke list.txt datoteka koja počinje bilo kojom znamenkom iz 4 do 8 .
$ grep [! 4-8] list.txt
Znak dolara - ($)
'$' koristi se za definiranje završnog znaka. Ako znate da želite pretraživati podatke na temelju zadnjeg znaka, možete ih koristiti '$' u šablonu.
Primjer - 1:
Pokrenite sljedeću naredbu za pretraživanje tih redaka list.txt datoteku koja završava sa 'do' .
$ grep a $ list.txt
Primjer - 2:
Pokrenite sljedeću naredbu za pretraživanje tih redaka list.txt datoteku koja završava brojem pedeset .
$ grep 50 $ list.txt
Kovrčava zagrada - ({})
‘{}’ može se upotrijebiti za podudaranje naziva datoteka s više od jednog uzorka globiranja. Svaki uzorak odvojen je s ',' u uvijenim zagradama bez razmaka. Neki primjeri navedeni su u nastavku.
Primjer - 1:
Pokrenite sljedeću naredbu za pretraživanje onih datoteka čija su imena dugačka 5 znakova, a nastavak je 'Sh' ili su zadnja dva znaka datoteka 'St' a proširenje je 'Txt' .
$ ls -l {?????. sh,*st.txt}
Primjer - 2:
Pokrenite sljedeću naredbu za brisanje svih datoteka čiji su nastavci 'Doc' ili 'docx' .
$rm {*.doc,*.docx}
Cijev - (|)
Znak ‘|’ također se koristi za primjenu više uvjeta na uzorku globoracije. Svaki uzorak u naredbi je odvojen simbolom '|'.
Primjer - 1:
Pokrenite sljedeću naredbu za pretraživanje onih naziva datoteka koji počinju znakom 'a' i imaju nastavak 'bash' ili 'sh'.
$lsdo*+(.baš|.sh)Primjer - 2:
Napravite bash datoteku pod nazivom 'Menu.bash' i dodajte sljedeću skriptu. Ako korisnik unese 1 ili S tada će se ispisati Traženje teksta . Ako korisnik unese 2 ili R. tada će se ispisati Zamjena teksta . Ako korisnik unese 3 ili D tada će se ispisati Brisanje teksta . Ispisat će se Pokušajte ponovno za bilo koji drugi ulaz.
#!/bin/bashizbaciti 'Odaberite bilo koju opciju s izbornika:'
čitatiodgovor
slučaj $ odgovor u
1 |S) izbaciti 'Traženje teksta';;
2 |R) izbaciti 'Zamjena teksta';;
3 |D) izbaciti 'Brisanje teksta';;
*) izbaciti 'Pokušaj ponovno.';;
esac
Pokrenite skriptu.
$bashjelovnik.baš
ZAKLJUČAK
Neki od najčešće korištenih uzoraka globiranja objašnjeni su u ovom vodiču pomoću vrlo jednostavnih primjera. Nadam se da će vam nakon vježbanja gornjih primjera koncept globiranja biti jasan i da ćete ga moći uspješno primijeniti u bash naredbama i skriptama.
Za više informacija pogledajte ovaj video: