10 tr käskenäiteid Linuxis


tr (lühend tõlkimisest) on kasulik käsurea utiliit, mis tõlgib ja/või kustutab stdini sisendist märke ja kirjutab stdouti. See on kasulik programm käsureal teksti manipuleerimiseks.

Selles artiklis selgitame mõningaid kasulikke tr-käskude näiteid Linuxi algajatele.

Tr käsu käivitamise süntaks on järgmine, kus SET1 tähemärgid tõlgitakse SET2 tähemärkideks.

$ tr flags [SET1] [SET2]

Linuxi tr käskude näited

1. Lihtne tr-käsu kasutamise juhtum on kõigi tekstis väiketähtede vahetamine suurteks ja vastupidi, nagu allpool näidatud.

$ 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. Teise võimalusena võite kasutada järgmist käsku, et muuta failis kõik väiketähed suurteks, nagu näidatud.

$ 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. Stdouti kirjutatud tulemuste salvestamiseks faili hilisemaks töötlemiseks kasutage kesta väljundi ümbersuunamise funktsiooni (>) , nagu näidatud.

$ 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. Ümbersuunamise osas võite sisendi suunamise abil saata sisendi tr-ile ja suunata väljund faili sama käsu abil, nagu näidatud joonisel.

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

5. Teine kasulik funktsioon on see, et lipu -d abil saate kustutada märke, näiteks järgmise käsu abil domeeninimede tühikute eemaldamiseks.

$ 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. Kui teie töödeldavas tekstis on järjestuses korduvaid märke (näiteks kahekordsed tühikud), võite märkide pigistamiseks kasutada valikut -s , jättes ainult ühe esinemiskoha.

$ 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. Valik -c käsib tr-il kasutada SET-i antud komplementi. Selles näites soovime kustutada kõik tähed ja jätta ainult UID.

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

8. Siin on näide ühe sõnarea (lause) mitmeks reaks jaotamisest, kus iga sõna ilmub eraldi real.

$ echo "My UID is $UID"

My UID is 1000

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

My 
UID 
is 
1000

9. Seoses eelmise näitega saate tõlkida mitu sõna rida ühte lausesse, nagu näidatud.

$ cat uid.txt

My 
UID 
is 
1000

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

My UID is 1000

10. Samuti on võimalik tõlkida ainult üks märk, näiteks tühik \":" märgiks järgmiselt.

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

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

Tr-iga saab kasutada mitmeid järjestusmärke. Lisateabe saamiseks vaadake tr-manuaalilehte

$ man tr

See on kõik! tr on kasulik käsk käsureal teksti manipuleerimiseks. Selles juhendis näitasime mõningaid kasulikke näiteid Linuxi algajatele mõeldud tr-käsu kasutamiseks. Oma mõtteid saate meiega jagada alloleva kommentaarivormi kaudu.