Zoeken op website

10 tr Commandovoorbeelden in Linux


tr (afkorting van translate) is een handig opdrachtregelhulpprogramma dat tekens uit stdin-invoer vertaalt en/of verwijdert en naar stdout schrijft. Het is een handig programma voor het manipuleren van tekst op de opdrachtregel.

In dit artikel worden enkele nuttige voorbeelden van tr-commando's voor Linux-beginners uitgelegd.

De syntaxis voor het uitvoeren van de opdracht tr is als volgt, waarbij tekens in SET1 worden vertaald naar tekens in SET2.

tr flags [SET1] [SET2]

Linux tr-opdrachtvoorbeelden

1. Een eenvoudig gebruiksvoorbeeld van het tr-commando is het veranderen van alle kleine letters in de tekst in hoofdletters en omgekeerd, zoals hieronder weergegeven.

$ cat linux.txt

linux is my life
linux has changed my life
linux is best and everthing to me..:)
$ cat linux.txt | tr [:lower:] [:upper:]

LINUX IS MY LIFE
LINUX HAS CHANGED MY LIFE
LINUX IS BEST AND EVERTHING TO ME..:)

2. U kunt ook de volgende opdracht gebruiken om alle kleine letters in een bestand in hoofdletters te veranderen, zoals weergegeven.

$ cat linux.txt | tr [a-z] [A-Z]

LINUX IS MY LIFE
LINUX HAS CHANGED MY LIFE
LINUX IS BEST AND EVERTHING TO ME..:)

3. Om de resultaten die naar stdout zijn geschreven in een bestand op te slaan voor latere verwerking, gebruikt u de uitvoeromleidingsfunctie (>) van de shell, zoals weergegeven.

$ cat linux.txt | tr [a-z] [A-Z] >output.txt
$ cat output.txt 

LINUX IS MY LIFE
LINUX HAS CHANGED MY LIFE
LINUX IS BEST AND EVERTHING TO ME..:)

4. Wat betreft de omleiding: u kunt invoer naar tr sturen met behulp van de invoeromleiding en de uitvoer naar een bestand omleiden met hetzelfde commando, zoals weergegeven.

$ tr [a-z] [A-Z] < linux.txt >output.txt

5. Een andere handige functie is dat u de vlag -d kunt gebruiken om tekens te verwijderen, bijvoorbeeld om de spaties in domeinnamen te verwijderen met behulp van de volgende opdracht.

$ cat domains.txt

www. tecmint. com
www. fossmint. com
www. linuxsay. com
$ cat domains.txt | tr -d '' 

linux-console.net
www.fossmint.com
www.linuxsay.com

6. Als er herhaalde tekens in een reeks voorkomen (bijvoorbeeld dubbele spaties) in de tekst die u verwerkt, kunt u de optie -s gebruiken om de tekens uit te sluiten. één voorkomen ervan.

$ cat domains.txt

www.tecmint.....com
www.fossmint.com
www.linuxsay.com
$ cat domains.txt | tr -s '' 

linux-console.net
www.fossmint.com
www.linuxsay.com

7. De -c optie vertelt tr om het complement te gebruiken in de gegeven waarde van SET. In dit voorbeeld willen we alle letters verwijderen en alleen de UID behouden.

$ echo "My UID is $UID" | tr -cd "[:digit:]\n"
OR
$ echo "My UID is $UID" | tr -d "a-zA-Z"

8. Hier is een voorbeeld van het opsplitsen van een enkele regel woorden (zin) in meerdere regels, waarbij elk woord afzonderlijk verschijnt.

$ echo "My UID is $UID"

My UID is 1000

$ echo "My UID is $UID" | tr " "  "\n"

My 
UID 
is 
1000

9. Gerelateerd aan het vorige voorbeeld kunt u ook meerdere woordregels in één zin vertalen, zoals weergegeven.

$ cat uid.txt

My 
UID 
is 
1000

$ tr "\n" " " < uid.txt

My UID is 1000

10. Het is ook mogelijk om slechts één enkel teken, bijvoorbeeld een spatie, als volgt te vertalen naar een “ : ” teken.

$ echo "linux-console.net =>Linux-HowTos,Guides,Tutorials" | tr " " ":"

linux-console.net:=>Linux-HowTos,Guides,Tutorials

Er zijn verschillende reekstekens die je kunt gebruiken met tr. Voor meer informatie, zie de tr manpagina.

man tr

Dat is alles! tr is een handig commando voor het manipuleren van tekst op de commandoregel. In deze handleiding hebben we enkele nuttige tr command gebruiksvoorbeelden laten zien voor Linux-nieuwkomers. U kunt uw mening met ons delen via het onderstaande reactieformulier.