Impara Linux

I caratteri jolly in Linux spiegati con 10 esempi

I caratteri jolly in Linux spiegati con 10 esempi

Caratteri jolly, a.K.un. meta caratteri, sono una manna dal cielo quando si tratta di cercare nomi di file particolari da un mucchio di file con nomi simili. Ad esempio, utilizzando i caratteri jolly in Linux, è possibile utilizzare il ls comando,  rm comando, o qualsiasi altro comando Linux per quella materia, su più file purché corrispondano ai criteri definiti.

In questa lettura, discuteremo di come puoi utilizzare i caratteri jolly in Linux per semplificare il tuo flusso di lavoro e diventare più produttivo. Ma prima, diamo una rapida occhiata ai caratteri jolly più potenti e comunemente usati in Linux:

  1. L'asterisco (*): Il (*) il carattere jolly rappresenta un numero qualsiasi di caratteri sconosciuti. Questo è utile quando si cercano documenti o file ma si ricorda solo una parte del suo nome.
  2. Il punto interrogativo (?): Il (?) il carattere jolly rappresenta solo un carattere sconosciuto. Questo è utile quando hai un elenco di file con nomi simili e non sei sicuro di alcuni caratteri.
  3. I caratteri tra parentesi ([ ]): Il ([ ]) il carattere jolly - la 3a parentesi e non la 1a parentesi - viene utilizzato per abbinare eventuali occorrenze di caratteri definiti all'interno delle parentesi. Questa opzione è utile quando si tratta di file maiuscoli e minuscoli, come vedremo in seguito.

Ora, mi rendo conto che tutte queste informazioni non hanno senso se non hai mai avuto a che fare con i caratteri jolly prima. Tuttavia, per aiutarti a chiarire la tua confusione, abbiamo messo insieme una guida dettagliata, inclusi 10 esempi, per assicurarti di comprendere correttamente la funzione dei caratteri jolly e iniziare a usarli da solo.

Esempi di nomi di file corrispondenti utilizzando i caratteri jolly

Per iniziare, usiamo tutti i vari caratteri jolly di cui abbiamo discusso in precedenza e vediamo come usarli per abbinare i nomi dei file. Per fare ciò, utilizzeremo il seguente set di file:

  1. Questo comando corrisponderà a tutti i nomi di file che iniziano con la lettera M e termina con una o più occorrenze di qualsiasi carattere.
$ ls -l M*

Produzione:

Nota come corrisponde solo ai file che iniziano con la "M" maiuscola e non con la "m" minuscola. 

2. Questo comando copierà tutti i nomi di file che iniziano con I miei dati e termina con una o più occorrenze di qualsiasi carattere.

$ ls Miei dati*

Produzione:

3. Questo comando abbinerà tutti i file che iniziano con la lettera M, finisce con la lettera no, e con 1 carattere qualsiasi nel mezzo.

$ ls M?no.sh

Produzione:

4. Questo comando abbinerà tutti i file che iniziano con la lettera M, finisce con la lettera no, ma avere solo 1 carattere in mezzo appartiene all'elenco dei caratteri definiti tra parentesi quadre [AIOU].

$ ls M[AEIOU]N.sh

Produzione:

4 esempi di combinazione di caratteri jolly diversi per abbinare nomi di file

Ora, per potenziare la tua efficacia, puoi combinare e abbinare questi caratteri jolly per lavorare insieme ed essere più efficace nell'abbinamento dei nomi di file.

  1. Ecco un comando che ti aiuterà a trovare qualsiasi nome di file che può avere 3 caratteri qualsiasi (incluso nessun carattere) seguito da torta e termina con una o più occorrenze di qualsiasi carattere.
$ ls ???torta*

Produzione:

2. Ecco un comando che abbinerà tutti i nomi di file che iniziano con uno di questi caratteri tra parentesi quadre [MNLOP] e termina con una o più occorrenze di qualsiasi carattere.

Vediamo anche cosa succede quando sostituiamo [MNLOP] con [mnlop].

Quindi i comandi che utilizzeremo sono:

$ ls [MNLOP]*
$ ls [minimo]*

Produzione:

Come puoi vedere, devi essere consapevole delle maiuscole e delle minuscole delle lettere che inserisci nella parentesi jolly poiché ciò influenzerà il risultato.

3. Ecco un comando che abbinerà tutti i nomi di file con uno di questi caratteri [MNLOP] come il primo, uno qualsiasi di questi personaggi [AIOU] come il secondo, seguito da no, e infine termina con una o più occorrenze di qualsiasi carattere.

$ ls [MNLOP][AEIOU]N*

Produzione:

Notare come (*) Il carattere jolly aiuta solo a trovare tutte le estensioni dei nomi dei file.4.

Ecco un comando che abbinerà tutti i nomi di file che iniziano con una o più occorrenze di qualsiasi carattere che porta a M, seguito da 1 carattere qualsiasi, quindi seguito da no, e poi termina con una o più occorrenze di qualsiasi carattere.

$ ls *M?N*

Produzione:

Utilizzo di caratteri jolly per abbinare il set di caratteri

A questo punto, dovresti avere una comprensione pratica di come funzionano i caratteri jolly. Ora possiamo concentrarci su alcuni casi d'uso avanzati in cui i caratteri jolly sono inestimabili.

Ad esempio, il carattere jolly parentesi ti permette di definire un intervallo di caratteri usando [-] invece di digitare ogni carattere. Questo può essere estremamente utile quando vuoi specificare un insieme di caratteri e abbinare i nomi dei file in base a dove appaiono i caratteri. 

Per fare ciò, utilizzeremo il seguente set di file, come mostrato nell'immagine:

Come puoi vedere, l'immagine che abbiamo creato è un elenco di file contenenti diversi dati Pokemon.

Ora per trovare tutti i nomi di file che iniziano con pokemon- seguito da un numero, quindi da un qualsiasi carattere alfanumerico, sempre seguito da un numero, e quindi terminando con una o più occorrenze di qualsiasi carattere, possiamo utilizzare il seguente comando:

$ls pokemon-[0-9][0-9a-zA-Z][0-9]*

Produzione:

La parte [0-9] rappresenta qualsiasi carattere numerico compreso tra 0 per 9

La parte successiva [0-9a-zA-Z] rappresenta un numero qualsiasi di caratteri tra 0 per 9, o qualsiasi lettera minuscola tra un per z, o una lettera maiuscola tra UN per Z.

In quanto tale, se cambiamo [0-9a-zA-Z] con [0-9a-z], puoi vedere che il risultato non include alcun nome di file con le lettere maiuscole nella posizione designata.

$ls pokemon-[0-9][0-9a-z][0-9]*

Produzione:

Utilizzo di caratteri jolly per negare un insieme di caratteri

Come puoi specificare un set di caratteri, puoi anche negare un set di caratteri durante la corrispondenza per i nomi dei file. Ecco un esempio di come è fatto:

$ls pokemon-[0-9][!a-z][0-9]*

Produzione:

Corrisponde a tutti i nomi di file che iniziano con pokemon- seguito da qualsiasi carattere numerico, quindi da qualsiasi carattere diverso dalle lettere minuscole, seguito da qualsiasi carattere numerico e infine termina con una o più occorrenze di qualsiasi carattere.

Usando [!a-z], stiamo negando l'insieme di tutte le lettere minuscole. Ora, i nomi dei file sono abbinati per qualsiasi carattere che non sia una lettera minuscola.

Avvolgendo

Questo ci porta alla fine della nostra rapida occhiata ai caratteri jolly di Linux e a come usarli. Riassumendo tutto, in poche parole, il asterisco (*) il carattere jolly è molto utile quando conosci il nome del file ma non l'estensione. Il punto interrogativo (?) Il carattere jolly può aiutarti se dimentichi alcuni caratteri del nome del file. Il parentesi ([]) il carattere jolly è utile quando si desidera contenere la ricerca all'interno di un insieme di caratteri definiti.

I 10 migliori giochi da giocare su Ubuntu
La piattaforma Windows è stata una delle piattaforme dominanti per i giochi a causa dell'enorme percentuale di giochi che si stanno sviluppando oggi p...
I 5 migliori giochi arcade per Linux
Al giorno d'oggi, i computer sono macchine serie utilizzate per i giochi. Se non riesci a ottenere il nuovo punteggio più alto, saprai cosa intendo. I...
Battaglia per Wesnoth 1.13.6 Sviluppo rilasciato
Battaglia per Wesnoth 1.13.6 rilasciato il mese scorso, è la sesta versione di sviluppo nella 1.13.x e offre una serie di miglioramenti, in particolar...