'?' è usato per abbinare qualsiasi singolo carattere. Puoi usare '?' per più volte per abbinare più caratteri.
Esempio 1:
Supponiamo che tu voglia cercare quei nomi di testo i cui nomi sono lunghi 4 caratteri e l'estensione è .TXT. Puoi applicare il modello globing usando '?'Quattro volte per fare questo compito.
Scopri l'elenco di tutti i file e la cartella della directory corrente.
$ ls -l
Esegui i seguenti comandi Cerca quei file i cui nomi sono lunghi e sconosciuti da quattro caratteri.
$ ls -l ????.TXTEsempio-2:
Supponiamo che tu voglia cercare quei file di documenti i cui nomi sono lunghi 8 caratteri, i primi 4 caratteri lo sono f, o, o E T ed l'estensione è doc. Esegui il comando seguente con il modello Globbing per cercare i file.
$ ls -l piede????.doc
Esempio-3:
Supponiamo, sai che il nome file è 'migliore' ed l'estensione è lunga 3 caratteri, ma non conosco l'estensione. Esegui il seguente comando usando '?"Per cercare tutti i file con il nome 'Test' con una proroga di tre caratteri.
$ ls -l migliore.???
Asterisk - (*)
'*' è usato per abbinare zero o più caratteri. Se hai meno informazioni per cercare qualsiasi file o informazione, puoi utilizzare '*' nel modello globing.
Esempio 1:
Supponiamo che tu voglia cercare tutti i file di 'pl' estensione. Esegui il comando seguente usando '*' Per fare quell'attività.
$ ls -l *.pl
Esempio-2:
Supponiamo, conosci solo il carattere iniziale del nome file 'UN'. Esegui il comando seguente usando '*' per cercare tutti i file della directory corrente con cui sono iniziati i nomi 'UN'.
$ ls -l a*.*
Esempio-3:
È possibile applicare '*' nello script bash per vari scopi senza cercare file. Crea un file bash denominato 'controllo.sh' Con il seguente script. Qui, quando l'utente digiterà 'y 'o' y 'o' sì 'o' sì ' Poi 'confermato' stamperà e quando il tipo verrà digitato 'n' o 'n' o 'no' o 'no' Poi 'Non confermato' Stamperò.
#!/Bin/Bash
echo "Vuoi confermare?"
Leggi la risposta
Caso $ Risposta in
[Yy]*) echo "confermato.";;
[Nn]*) echo "non confermato.";;
*) echo "riprova.";;
Esac
Esegui lo script.
$ Bash Check.sh
Parentesi quadrata - ([])
'[]' è usato per abbinare il carattere dalla gamma. Alcune delle dichiarazioni della gamma per lo più usate sono menzionate di seguito.
Tutti gli alfabeti maiuscoli sono definiti dall'intervallo come, [: superiore:] o [A-Z] .
Tutti gli alfabeti minuscoli sono definiti dall'intervallo come, [: inferiore:] o [A-Z].
Tutte le cifre numeriche sono definite dall'intervallo come, [: cifre:] o [0-9].
Tutti gli alfabeti maiuscoli e inferiori sono definiti dall'intervallo come [: alfa:] o [a-za-z].
Tutti gli alfabeti maiuscole, l'alfabeto minuscolo e le cifre sono definiti dall'intervallo come, [: Alnum:] o [A-Za-Z0-9]
Esempio 1:
Esegui il comando seguente per cercare tutti i file e le cartelle il cui nome contiene P O Q O R O S.
$ ls -l [p -s]*
Esempio-2:
Esegui il comando seguente per cercare tutti i file e le cartelle il cui nome inizia con qualsiasi cifra da 1 a 5.
$ ls -l [1-5]*
Custode - (^)
Puoi usare '^' con parentesi quadrata per definire il modello globing in modo più specifico. '^' può essere usato all'interno o all'esterno della parentesi quadrata. '^' è usato al di fuori della fascia quadrata per cercare tali contenuti del file che inizia con una determinata gamma di caratteri. '^' viene utilizzato all'interno della fascia quadrata per mostrare tutto il contenuto del file evidenziando le righe iniziano con una determinata gamma di caratteri . È possibile utilizzare diversi tipi di modelli Globbing per la ricerca di contenuti particolari da un file. 'grep' Il comando viene utilizzato per la ricerca di contenuti in bash. Supponiamo che tu abbia un file di testo chiamato 'elenco.TXT' Con i seguenti contenuti. Prova i seguenti esempi per quel file.
MelaEsempio 1:
Esegui il comando seguente per cercare queste righe da elenco.TXT file che inizia con P o q o r.
Elenco $ grep '^[p-r]'.TXTEsempio - 2:
Esegui il comando seguente per evidenziare quelle righe da elenco.TXT file che inizia con A o B o C.
Elenco $ grep '[^a-c]'.TXTSegno esclamatorio - (!)
Puoi usare '!' All'interno del modello di portata. Funziona lo stesso dell'uso del simbolo '^' al di fuori del modello di portata. Alcuni esempi di utilizzo '!' Il segno sono riportati di seguito.
Esempio 1:
Esegui il comando seguente per mostrare quelle righe da elenco.TXT file che inizia con 'P' o q o r.
$ grep [!Elenco P-R].TXTEsempio - 2:
Esegui il comando seguente per mostrare quelle righe da elenco.TXT file che inizia con qualsiasi cifra da 4 a 8.
$ grep [!4-8] elenco.TXTSegno del dollaro - ($)
'$' è usato per definire il carattere finale. Se sai che desideri cercare informazioni in base all'ultimo carattere, puoi usare '$' nel modello globing.
Esempio 1:
Esegui il comando seguente per cercare queste righe da elenco.TXT file che termina con 'UN'.
$ grep a $ list.TXTEsempio - 2:
Esegui il comando seguente per cercare queste righe da elenco.TXT file che termina con il numero 50.
$ grep 50 $ elenco.TXTParentesi ricci - ()
'' può essere utilizzato per abbinare i nomi dei file con più di un globo. Ogni modello è separato da "," nella parentesi rictica senza spazio. Alcuni esempi sono riportati di seguito.
Esempio 1:
Esegui il seguente comando per cercare quei file i cui nomi sono lunghi 5 caratteri e l'estensione è 'sh' o gli ultimi due caratteri dei file sono 'St' E l'estensione è 'TXT'.
$ ls -l ?????.Sh,*St.TXTEsempio - 2:
Esegui il comando seguente per eliminare tutti i file le cui estensioni sono 'doc' o 'docx'.
$ rm *.Doc,*.docx
Pipe- (|)
'|' ' Il segno viene utilizzato anche per applicare più di una condizione sul modello globing. Ogni modello è separato da '|' simbolo nel comando.
Esempio 1:
Esegui il seguente comando per cercare quei filenati che stanno iniziando con il carattere "A" e ha l'estensione "bash" o "sh".
$ ls a*+(.Bash |.sh)
Esempio - 2:
Crea un file bash denominato 'menù.Bash ' e aggiungi il seguente script. Se il tipo di utente 1 o s Quindi stamperà "Ricerca testo". Se il tipo di utente 2 o r Quindi stamperà "Sostituzione del testo". Se il tipo di utente 3 o d Quindi stamperà “Eliminazione del testo". Stampa "Riprova" Per qualsiasi altro input.
#!/Bin/Bash
Echo "Seleziona qualsiasi opzione dal menu:"
Leggi la risposta
Caso $ Risposta in
1 | S) eco "testo di ricerca" ;;
2 | R) echo "Sostituzione del testo" ;;
3 | D) eco "eliminazione del testo" ;;
*) echo "riprova.";;
Esac
Esegui lo script.
$ Bash Menu.Bash
Alcuni dei modelli globing più comunemente usati sono spiegati in questo tutorial usando esempi molto semplici. Spero che dopo aver praticato gli esempi di cui sopra, il concetto di Globbing ti sarà chiaro e sarai in grado di applicarlo nei comandi e negli script bash.
Per ulteriori informazioni, consultare questo video: