In Linux, “tr” è uno strumento integrato che può “tradurre, spremere e/o eliminare caratteri dallo standard input, scrivendo allo standard output” (dalla pagina man).
Dalla descrizione ufficiale, è facile capire il valore di questo strumento. Linux si presenta con una grande collezione di strumenti integrati. Ce ne sono alcuni speciali che sono super utili per la manipolazione del testo. Abbiamo già coperto un certo numero di quelli, come Vim, Nano, awk, sed e altri strumenti.,
Coloro che lavorano con i testi su base regolare, ” tr ” sarà sicuramente davvero, davvero utile. Questo articolo illustrerà l’uso più comune di “tr” con esempi sufficienti.
Nota: Il tutorial utilizzerà una tonnellata di file fittizi con contenuti casuali. Tutte le stringhe casuali sono generate da Random.org.
Questo è il percorso completo dello strumento di comando “tr”.
Uso di base
Per utilizzare lo strumento “tr”, è necessario utilizzare la seguente struttura di comando.,
Esistono diverse opzioni e modi per manipolare i testi usando “tr”. In un primo momento, diamo un’occhiata a questo file demo.
Tutti i caratteri sono in minuscolo, giusto? Trasformiamoli in maiuscolo!
Qui, il primo parametro di “tr” indica di eseguire una traduzione su tutti i caratteri minuscoli dell’input. La seconda parte sta dicendo di trasformarli in maiuscolo all’uscita.
Ora, facciamo il contrario.
C’è anche un altro modo per eseguire questa stessa attività. Diamo un’occhiata.,
Ora, invece di dire a “tr” di tradurre maiuscolo in minuscolo o minuscolo in maiuscolo, abbiamo detto di identificare le voci corrispondenti all’intervallo “a” a “z” e tradurre nel loro equivalente dall’intervallo “A” a “Z”.
Questo metodo simile può anche essere usato per tradurre maiuscole in minuscole.
Giocare con i numeri
Abbiamo visto come tradurre maiuscole in minuscole, giusto?, È tempo di giocare con le cifre.
Usando il seguente comando, possiamo facilmente tradurre tutte le cifre (0-9) nei loro caratteri equivalenti!
Impressionante! Che ne dici di quelle maiuscole?
Semplice, ma interessante, giusto? Possiamo anche trasformare i caratteri in cifre pure!,
Uh Oh, sembra che le cose si siano rotte, giusto? Bene, possiamo usare solo da ‘ a ‘ a ‘ j ‘ per rappresentare una singola cifra. Se c’è un carattere che è fuori da questo limite, “tr” sostituirà il carattere con”]”.
Eliminazione di caratteri
Come suggerisce la descrizione ufficiale, “tr” può fare molto di più della semplice traduzione di caratteri., Nell’esempio seguente, controlleremo come usare “tr” per eliminare determinati caratteri.
Ora, cancelliamo tutti i numeri dal contenuto.
Qui, il flag “-d” indica a “tr” di cancellare e indica le cifre da eliminare.
Possiamo farlo anche con i caratteri. Il seguente comando manterrà tutti i numeri ma rimuoverà tutti i caratteri.,
Che ne dici di rimuovere solo un singolo carattere specifico dal file?
Ha cancellato tutte le voci ‘y’ dal file.
Spremere caratteri ripetuti
Ci sono momenti in cui un carattere viene ripetuto in sequenza., Se hai a che fare con problemi così fastidiosi, lascia che” tr ” si prenda cura di esso! Usando il seguente comando, puoi spremere tali occorrenze. Mantiene essenzialmente l’occorrenza iniziale del carattere ed elimina quelli aggiuntivi.
Per prima cosa, è ora di verificare come appare il file demo.
Ora, passa il contenuto a”tr”.
Qui, il parametro “-s” è l’indicatore per eseguire l’azione “squeeze”.
Rottura/fusione frasi
Diamo un’occhiata al file demo.
Contiene una frase con spazi che dividono le parole, giusto? Dividiamo le parole in nuove righe.
Questo comando ha sostituito tutti i caratteri dello spazio con caratteri di nuova riga.
Uniamo di nuovo la frase spezzata in una frase lunga.
Tradurre caratteri
Proprio come abbiamo tradotto caratteri prima, questa volta, faremo lo stesso, ma con un solo carattere.,
In questo file, cambiamo tutti i caratteri di nuova riga in un punto e virgola.
Ho dovuto avvolgerlo intorno a”echo”. Altrimenti, creerebbe un output perché anche l’ultimo carattere di nuova riga verrebbe tradotto in un punto e virgola.
C’è un modo diverso di cambiare i caratteri. Tuttavia, questo è più difficile da controllare.
Cosa è successo qui? Usando il flag” – c”,” tr ” manterrà invariato il carattere di destinazione., In caso di mancata corrispondenza, ogni altro personaggio verrà trasformato. Qui, qualsiasi carattere diverso da ‘b ‘è stato sostituito da’z’.
Tradurre le stringhe
“tr” può anche funzionare con le stringhe. Eseguiamo la sostituzione delle stringhe.
La mia stringa da sostituire è più corta della stringa da sostituire, quindi non si adattava.,
Set di caratteri
Ormai, hai notato che ci sono un certo numero di set di caratteri supportati da “tr”. Mentre un certo numero di essi sono stati utilizzati negli esempi precedenti, altri set di caratteri sono anche molto utili. Ecco un elenco di tutti gli elenchi di caratteri supportati.
Set di caratteri POSIX
Set di caratteri aggiuntivi
- : Tutti gli alfabeti maiuscoli
- : Tutti gli alfabeti minuscoli
- : Tutte le cifre
Considerazioni finali
Ci sono un sacco di modi in cui tutte queste funzionalità di “tr” possono beneficiare gli utenti., Consiglio sempre di controllare tutte le opzioni disponibili e le guide approfondite su qualsiasi strumento Linux dalle loro pagine man, info e aiuto in quanto possono offrire conoscenze più preziose.
buon divertimento!
Leave a Reply