'?' bruges til at matche enhver enkelt karakter. Du kan bruge '?' flere gange for at matche flere tegn.
Eksempel-1:
Antag, at du vil søge i de tekstfilnavne, hvis navne er 4 tegn lange og udvidelsen er .txt . Du kan anvende globbing -mønster ved at bruge ' ? 'Fire gange for at udføre denne opgave.
Find ud af listen over alle filer og mapper i det aktuelle bibliotek.
$ls-det
Kør følgende kommando, søg i de filer, hvis navne er fire tegn lange og ukendte.
$ ls -l ????. txt
Eksempel-2:
Antag, at du vil søge i de dokumentfiler, hvis navne er 8 tegn lange, de første 4 tegn er f, o, o og t og forlængelse er dok . Kør følgende kommando med globbing -mønster for at søge i filerne.
$ls -detfod ????. dok
Eksempel-3:
Antag, at du ved, at filnavnet er 'bedst' og udvidelse er 3 tegn lang, men kender ikke udvidelsen. Kør følgende kommando ved hjælp af ’? 'For at søge i alle filer med navnet' test 'med en forlængelse på tre tegn.
$ls -detbedst.???
Stjerne - (*)
'*' bruges til at matche nul eller flere tegn. Hvis du har færre oplysninger til at søge i en fil eller oplysninger, kan du bruge det '*' i globingmønster.
Eksempel -1:
Antag, at du vil søge i alle filer af 'Pl' udvidelse. Kør følgende kommando ved hjælp af '*' at udføre den opgave.
$ls -det *.pl
Eksempel-2:
Antag, at du kun kender starttegnet i filnavnet, som er 'til' . Kør følgende kommando ved hjælp af '*' for at søge i alle filer i det aktuelle bibliotek, hvis navne er startet med 'til' .
$ls -dettil*.*
Eksempel-3:
Du kan anvende ‘*’ i bash -script til forskellige formål uden at søge i filer. Opret en bash -fil med navnet 'Check.sh' med følgende script. Her, når brugeren vil skrive ' y 'eller' Y 'eller' ja 'eller' Ja ' derefter 'Bekræftet' udskrives, og hvornår typen skriver 'N' eller 'N' eller 'nej' eller 'nej' derefter 'Ikke bekræftet' vil udskrive.
#!/bin/bashsmed ud 'Vil du bekræfte?'
Læssvar
sag $ svar i
[Åh]* ) smed ud 'bekræftet.';;
[Nr]* ) smed ud 'Ikke bekræftet.';;
*) smed ud 'Prøv igen.';;
esac
Kør scriptet.
$bashcheck.sh
Firkantet beslag - ([])
'[]' bruges til at matche karakteren fra området. Nogle af de mest anvendte intervaldeklarationer er nævnt nedenfor.
Alle store bogstaver er defineret af intervallet som [: øvre:] eller [A-Z].
Alle små alfabeter defineres af intervallet som [: lavere:] eller [a-z].
Alle numeriske cifre defineres af området som [: ciffer:] eller [0-9].
Alle store og små alfabeter defineres af intervallet som [: alfa:] eller [a-zA-z].
Alle store bogstaver, små bogstaver og cifre defineres af intervallet som [: alnum:] eller [a-zA-Z0-9]
Eksempel -1:
Kør følgende kommando for at søge i alle filer og mapper, hvis navn indeholder s eller hvad eller r eller s .
$ls -det [p-s]*
Eksempel-2:
Kør følgende kommando for at søge i alle filer og mapper, hvis navn starter med et ciffer fra 1 til 5.
$ls -det [1-5]*
Han mangler - (^)
Du kan bruge '^' med firkantet beslag til at definere globbing -mønster mere specifikt. '^' kan bruges inden for eller uden for firkantbeslaget. '^' Bruges uden for firkantet parentes til at søge i det indhold af filen, der starter med et givet tegnområde. '^' Bruges inde i firkantet parentes til at vise alt indhold i filen ved at fremhæve linjerne, der starter med et givet tegnområde. Du kan bruge forskellige typer globbing -mønstre til at søge efter bestemt indhold fra en fil. 'greb' kommandoen bruges til indholdssøgning i bash. Antag, at du har en tekstfil med navnet 'List.txt' med følgende indhold. Test følgende eksempler for den fil.
Æble4000
Banan
700
orange
850
Pære
9000
jackdruit
Eksempel - 1:
Kør følgende kommando for at søge i disse linjer fra list.txt fil der starter med P eller Q eller R .
$ grep '^[P-R]' list.txt
Eksempel - 2:
Kør følgende kommando for at markere disse linjer fra list.txt fil der starter med A eller B eller C .
$ grep '[^A-C]' list.txt
Udråbstegn - (!)
Du kan bruge '!' inde i intervallet. Det fungerer på samme måde som brugen af '^' symbol uden for områdemønsteret. Nogle eksempler på brug '!' tegn er angivet nedenfor.
Eksempel - 1:
Kør følgende kommando for at vise disse linjer fra list.txt fil der starter med 'P' eller Q eller R .
$ grep [! P-R] list.txt
Eksempel - 2:
Kør følgende kommando for at vise disse linjer fra list.txt fil, der starter med et hvilket som helst ciffer fra 4 til 8 .
$ grep [! 4-8] list.txt
Dollar Sign - ($)
'$' bruges til at definere sluttegnet. Hvis du ved, at du vil søge efter oplysninger baseret på sidste tegn, kan du bruge det '$' i globingmønster.
Eksempel - 1:
Kør følgende kommando for at søge i disse linjer fra list.txt fil, der slutter med 'til' .
$ grep en $ list.txt
Eksempel - 2:
Kør følgende kommando for at søge i disse linjer fra list.txt fil, der slutter med nummeret halvtreds .
$ grep 50 $ list.txt
Krøllet beslag - ({})
'{}' kan bruges til at matche filnavne med mere end et globbing -mønster. Hvert mønster adskilles med ‘,’ i krøllet beslag uden plads. Nogle eksempler er givet nedenfor.
Eksempel - 1:
Kør følgende kommando for at søge i de filer, hvis navne er 5 tegn lange og udvidelsen er 'Sh' eller de to sidste tegn i filerne er 'St' og udvidelsen er 'Txt' .
$ ls -l {?????. sh,*st.txt}
Eksempel - 2:
Kør følgende kommando for at slette alle filer, hvis udvidelser er 'Doc' eller 'docx' .
$rm {*.doc,*.docx}
Rør– (|)
‘|’ Tegn bruges også til at anvende mere end én betingelse for globbingmønster. Hvert mønster er adskilt af ‘|’ symbolet i kommandoen.
Eksempel - 1:
Kør følgende kommando for at søge i de filnavne, der starter med tegnet 'a' og har udvidelsen 'bash' eller 'sh'.
$lstil*+(.bash|.sh)Eksempel - 2:
Opret en bash -fil med navnet 'Menu.bash' og tilføj følgende script. Hvis bruger typen 1 eller S. så udskrives det Søger efter tekst . Hvis bruger typen 2 eller R. så udskrives det Udskiftning af tekst . Hvis bruger typen 3 eller D. så udskrives det Sletter tekst . Det vil udskrive Prøv igen for ethvert andet input.
#!/bin/bashsmed ud 'Vælg en valgmulighed i menuen:'
Læssvar
sag $ svar i
1 |S) smed ud 'Søgning efter tekst';;
2 |R) smed ud 'Udskiftning af tekst';;
3 |D) smed ud 'Sletter tekst';;
*) smed ud 'Prøv igen.';;
esac
Kør scriptet.
$bashmenu.bash
KONKLUSION
Nogle af de mest almindeligt anvendte globbing -mønstre forklares i denne vejledning ved hjælp af meget enkle eksempler. Jeg håber, at efter at have øvet ovenstående eksempler, vil begrebet globbing være klart for dig, og du vil kunne anvende det i bash -kommandoer og scripts med succes.
For mere information, tjek denne video: