Glob (programmering)
Inom programmering används globmönster för att specificera uppsättningar av filnamn med hjälp av jokertecken. Till exempel flyttar Bash-skalkommandot mv *.txt textfiles/ alla filer vars namn slutar på .txt från aktuell katalog till katalogen textfiles. I detta fall är * ett jokertecken som står för "alla teckensekvenser" och *.txt är ett globmönster. Ett annat vanligt jokertecken är frågetecknet (?) som står för ett enda tecken. Till exempel kommer mv ?.txt shorttextfiles/ att flytta alla filer där filnamnet består av ett enda tecken följt av .txt från aktuell katalog till katalogen shorttextfiles, medan ??.txt skulle matcha alla filer vars filnamn består av 2 tecken följt av .txt.
Förutom att matcha filnamn används glob också i stor utsträckning för att matcha godtyckliga textsekvenser. För detta ändamål är fnmatch ett vanligt gränssnitt.
Syntax
[redigera | redigera wikitext]De mest vanliga jokertecknen är *, ?, och […].
| Jokertecken | Beskrivning | Exempel | Matchar | Matchar inte | 
|---|---|---|---|---|
| * | matchar valfritt antal tecken inklusive inga tecken alls | Law* | Law,LawsellerLawyer | GrokLaw,Laelleraw | 
| *Law* | Law,GrokLawellerLawyer. | Laelleraw | ||
| ? | matchar alla enskilda tecken | ?at | Cat,cat,Batellerbat | at | 
| [abc] | matchar ett av de tecken som anges inom klamrarna | [CB]at | CatellerBat | cat,batellerCBat | 
| [a-z] | matchar ett av de tecken från det (språkberoende) intervallet som anges inom klamrarna | Letter[0-9] | Letter0,Letter1,Letter2tillLetter9 | Letters,LetterellerLetter10 | 
Vanligtvis kommer sökvägstecknet (/ för Linux/Unix, MacOS, etc. eller \ för Windows) aldrig att matchas. Vissa skal, exempelvis Bash, har funktionalitet som låter användare kringgå detta.[1]
Se även
[redigera | redigera wikitext]Referenser
[redigera | redigera wikitext]- Den här artikeln är helt eller delvis baserad på material från engelskspråkiga Wikipedia.
