A seconda del tipo di lavoro che svolgi sulla riga di comando in Linux, potresti volere un'utilità che possa fungere da coltellino svizzero per la modifica rapida del testo. Fortunatamente, esiste uno strumento chiamato tr, che si qualifica per questo ruolo. In questo tutorial, discuteremo le basi di tr usando alcuni esempi di facile comprensione.
Ma prima di farlo, vale la pena ricordare che tutti gli esempi in questo articolo sono stati testati su una macchina Ubuntu 18.04 LTS e su Debian 10.
Il comando tr di Linux
Ecco come lo spiega la pagina man dello strumento:
Translate, squeeze, and/or delete characters from standard input, writing to standard output.
E la seguente è la sua sintassi:
tr [OPTION]... SET1 [SET2]
ecco cosa significa SET:
SETs are specified as strings of characters. Most represent themselves. Interpreted sequences are:
\NNN character with octal value NNN (1 to 3 octal digits)
\\ backslash
\a audible BEL
\b backspace
\f form feed
\n new line
\r return
\t horizontal tab
\v vertical tab
Di seguito sono riportati alcuni esempi in stile Domande e risposte che dovrebbero darti un'idea migliore di come funziona il comando tr.
Q1. Come convertire minuscolo in maiuscolo usando tr?
Supponiamo di voler convertire la frase "linux tutorial on howtoforge" in maiuscolo, quindi ecco come puoi farlo usando tr.
echo 'linux tutorial on howtoforge' | tr "[:lower:]" "[:upper:]"
Il comando precedente ha prodotto il seguente output sul mio sistema:
LINUX TUTORIAL ON HOWTOFORGE
Q2. Come eliminare gli spazi extra usando tr?
Supponiamo di avere una riga del tipo:"HowtoForge è una risorsa estremamente per tutorial Linux". E il requisito è rimuovere gli spazi extra da questa riga.
Ecco come puoi usare tr per farlo:
echo 'HowtoForge is an extremely good resource for Linux tutorials' | tr -s '[:space:]'
Ecco l'output:
HowtoForge is an extremely good resource for Linux tutorials
Q3. Come eliminare il testo usando tr?
Si supponga di voler eliminare i trattini dalla riga seguente:"HowtoForge -- is -- an -- estremamente -- good -- resource -- for -- Linux -- tutorials." Allora ecco come puoi farlo usando tr.
echo 'HowtoForge -- is -- an -- extremely -- good -- resource -- for -- Linux -- tutorials' | tr -d '-'
Di seguito è riportato l'output che produce:
HowtoForge is an extremely good resource for Linux tutorials
Q4. Come sostituire i caratteri usando tr?
Nella sezione precedente, supponiamo che il requisito fosse quello di sostituire i trattini con, diciamo, punti. Allora ecco come puoi farlo usando tr.
echo 'HowtoForge -- is -- an -- extremely -- good -- resource -- for -- Linux -- tutorials' | tr '-' '.'
Di seguito è riportato l'output che ha prodotto:
HowtoForge .. is .. an .. extremely .. good .. resource .. for .. Linux .. tutorials
Conclusione
Quindi puoi vedere che il comando tr è uno strumento estremamente utile quando si tratta di modificare il testo. Abbiamo discusso alcune opzioni principali qui, ma l'utilità offre anche molte altre opzioni della riga di comando. Per prima cosa, prova questi e una volta che hai una buona idea di ciò di cui abbiamo discusso qui, puoi saperne di più su tr andando alla sua pagina man.