10 tr primerov ukazov v Linuxu


tr (okrajšava za prevod) je uporaben pripomoček ukazne vrstice, ki prevaja in/ali briše znake iz vnosa stdin in zapisuje v stdout. To je uporaben program za manipulacijo besedila v ukazni vrstici.

V tem članku bomo razložili nekaj uporabnih primerov ukazov tr za začetnike Linuxa.

Sintaksa za izvajanje ukaza tr je naslednja, kjer so znaki v SET1 prevedeni v znake v SET2.

$ tr flags [SET1] [SET2]

Primeri ukazov Linux tr

1. Preprost primer uporabe ukaza tr je spremeniti vse male črke v besedilu v velike črke in obratno, kot je prikazano spodaj.

$ cat linux.txt

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

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

2. Druga možnost je, da z naslednjim ukazom spremenite vse male črke v velike v datoteki, kot je prikazano.

$ 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. Če želite rezultate, zapisane v stdout, shraniti v datoteko za kasnejšo obdelavo, uporabite funkcijo preusmeritve izhodne lupine (>) , kot je prikazano.

$ 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. Kar zadeva preusmeritev, lahko z vhodno preusmeritvijo pošljete vhod v tr in izhod preusmerite v datoteko z istim ukazom, kot je prikazano.

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

5. Druga koristna funkcija je, da lahko z zastavico -d izbrišete znake, na primer z naslednjim ukazom odstranite presledke v imenih domen.

$ 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. Če se v besedilu, ki ga obdelujete, pojavljajo ponavljajoči se znaki (na primer dvojni presledki), lahko z možnostjo -s stisnete znake, pri čemer ostane le en pojav.

$ 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. Možnost -c tr pove, naj uporabi komplement v danem nizu SET. V tem primeru želimo izbrisati vse črke in pustiti samo UID.

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

8. Tukaj je primer razčlenitve ene vrstice besed (stavka) v več vrstic, kjer se vsaka beseda pojavi v ločeni vrstici.

$ echo "My UID is $UID"

My UID is 1000

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

My 
UID 
is 
1000

9. V zvezi s prejšnjim primerom lahko tudi prevedete več vrstic besed v en stavek, kot je prikazano.

$ cat uid.txt

My 
UID 
is 
1000

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

My UID is 1000

10. Možno je tudi prevesti samo en znak, na primer presledek v znak \":" , kot sledi.

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

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

S tr lahko uporabite več zaporednih znakov, za več informacij si oglejte man stran tr.

$ man tr

To je vse! tr je uporaben ukaz za upravljanje besedila v ukazni vrstici. V tem priročniku smo pokazali nekaj uporabnih primerov uporabe ukazov tr za novince v Linuxu. Svoje misli lahko delite z nami preko spodnjega obrazca za komentar.