Linux-komennot

Linux tr -komento

Linux tr -komento
Linuxissa ”tr” on sisäänrakennettu työkalu, joka voi ”kääntää, puristaa ja / tai poistaa merkkejä vakiosyötöstä kirjoittamalla vakiolähtöön” (man-sivulta).

Virallisesta kuvauksesta on helppo ymmärtää tämän työkalun arvo. Linux tarjoaa suuren kokoelman sisäänrakennettuja työkaluja. On joitain erityisiä, jotka ovat erittäin hyödyllisiä tekstinkäsittelyssä. Olemme jo käsitelleet useita niistä, kuten Vim, Nano, awk, sed ja muut työkalut.

Ne, jotka työskentelevät tekstien kanssa säännöllisesti, "tr" on ehdottomasti todella hyödyllinen. Tämä artikkeli havainnollistaa "tr": n yleisintä käyttöä riittävillä esimerkeillä.

Huomaa: Opetusohjelmassa käytetään tonnia satunnaisen sisällön nukkeja. Kaikki satunnaiset merkkijonot luodaan Satunnainen.org.

Sijainti

mikä tr

Tämä on “tr” -komennotyökalun koko polku.

Peruskäyttö

"Tr" -työkalun käyttämiseen on käytettävä seuraavaa komentorakennetta.

tr [SET1] [SET2]

On olemassa erilaisia ​​vaihtoehtoja ja tapoja käsitellä tekstejä käyttämällä "tr". Aluksi katsotaanpa tämä demotiedosto.

kissan esittely.txt

Kaikki merkit ovat pieniä, oikealla? Muunnetaan ne suuriksi kirjaimiksi!

kissan esittely.txt | tr [: alempi:] [: ylempi:]

Tässä tr: n ensimmäinen parametri osoittaa käännöksen suorittamisen kaikille syötteen pienille kirjaimille. Toinen osa käskee muuttaa ne isoiksi kirjaimiksi lähdössä.

Tehdään nyt päinvastoin.

kissan esittely 1.txt

kissan esittely 1.txt | tr [: ylempi:] [: alempi:]

On myös toinen tapa suorittaa sama tehtävä. Katsotaanpa se.

kissan esittely.txt | tr [a-z] [A-Z]

Sen sijaan, että käskimme "tr" kääntämään isoja kirjaimia pieniksi tai pieniä isoiksi, käskimme tunnistaa merkinnät, jotka vastaavat aluetta "a" - "z", ja kääntää ne vastaaviksi alueelta "A" - "Z".

Tätä vastaavaa menetelmää voidaan käyttää myös kääntämään isoja kirjaimia pieniksi.

kissan esittely 1.txt | tr [A-Z] [a-z]

Pelataan numeroilla

Näimme kuinka kääntää isot kirjaimet pieniksi, oikeassa? On aika leikkiä numeroilla.

Seuraavan komennon avulla voimme helposti kääntää kaikki numerot (0-9) vastaaviksi merkeiksi!

kissa demo_digit.txt

kissa demo_digit.txt | tr [0-9] [a-z]

Mahtava! Entä isot kirjaimet?

kissa demo_digit.txt | tr [0-9] [A-Z]

Yksinkertainen, mutta mielenkiintoinen, oikea? Voimme myös muuntaa merkit numeroiksi!

kissa demo_pohjanlehti.txt

kissa demo_matkalaukku.txt | tr [a-z] [0-9]

Uh, näyttää siltä, ​​että asiat hajosivat, eikö? No, voimme käyttää vain a-a - j edustamaan yksinumeroisia numeroita. Jos tässä merkinnässä ei ole merkkiä, ”tr” korvaa merkin nimellä ”].

Poistetaan merkkejä

Kuten virallisessa kuvauksessa ehdotetaan, ”tr” voi tehdä muutakin kuin vain merkkien kääntämisen. Seuraavassa esimerkissä tarkistamme, kuinka tr-kirjainta käytetään tiettyjen merkkien poistamiseen.

kissa satunnainen.txt

Poistetaan nyt kaikki numerot sisällöstä.

kissa satunnainen.txt | tr -d [0-9]

Tässä "-d" -lippu on käske "tr" poistaa ja [0-9] merkitsevät poistettavat numerot.

Voimme tehdä sen myös hahmojen kanssa. Seuraava komento säilyttää kaikki numerot, mutta poistaa kaikki merkit.

kissa satunnainen.txt | tr -d [a-z]

Entä vain yhden yksittäisen merkin poistaminen tiedostosta?

kissa demo_matkalaukku.txt

kissa demo_matkalaukku.txt | tr -d 'y'

Se poisti kaikki y-merkinnät tiedostosta.

Puristamalla toistuvia merkkejä

On aikoja, jolloin merkki toistetaan peräkkäin. Jos käsittelet tällaisia ​​ärsyttäviä asioita, anna “tr”: n hoitaa se! Seuraavan komennon avulla voit puristaa tällaisia ​​tapahtumia. Se pitää pohjimmiltaan merkin alkuperäisen esiintymisen ja poistaa muut.

Ensinnäkin on aika tarkistaa, miten demotiedosto näyttää.

kissan kaksoiskappale.txt

Siirrä nyt sisältö tr: lle.

kissan kaksoiskappale.txt | tr -s [: numeroa:]

Tässä "-s" -parametri on indikaattori "purista" -toiminnon suorittamiseksi.

Lausekkeiden rikkominen / yhdistäminen

Katsotaanpa demotiedosto.

lepakko kaksoiskappale.txt

Se sisältää lauseen, jossa välilyönnit jakavat sanat, oikea? Jaetaan sanat uusiksi riveiksi.

kissan kaksoiskappale.txt | tr "" "\ n"

Tämä komento korvasi kaikki välilyönnit uudella rivillä.

Yhdistetään rikkoutunut lause taas pitkäksi lauseeksi.

lepakko kaksoiskappale.txt

kissan kaksoiskappale.txt | tr "\ n" ""

Käännetään merkkejä

Aivan kuten käännimme merkkejä aiemmin, tällä kertaa, teemme saman, mutta vain yhdellä hahmolla.

kissan esittely.txt

Vaihdetaan tässä tiedostossa kaikki uuden rivin merkit puolipisteiksi.

kissan esittely.txt | tr "\ n" ";"

Minun piti kääriä se "kaiun" ympärille. Muuten se loisi jonkin verran lähtöä, koska viimeinen uusi rivi-merkki myös käännetään puolipisteeksi.

Hahmojen vaihtamiseen on erilainen tapa. Tätä on kuitenkin vaikea hallita.

kissan kaksoiskappale 1.txt

kissan kaksoiskappale 1.txt | tr -c 'd' 'z'

kissan kaksoiskappale 1.txt | tr -c 'd' 'z'

Vau! Kiedotaan se "kaikun" ympärille, jotta tuotos ymmärrettäisiin paremmin.

echo $ (kissan kaksoiskappale1.txt | tr -c 'd' 'z')

Mitä täällä tapahtui? Käyttämällä “-c” -merkkiä ”tr” pitää kohdemerkin ennallaan. Jos kohtaus ei täsmää, kaikki muut merkit muuttuvat. Tässä muu merkki kuin b korvattiin merkillä z.

Kielien kääntäminen

“Tr” voi toimia myös jousilla. Suoritetaan merkkijonon vaihto.

kissan kaksoiskappale 1.txt

kissan kaksoiskappale 1.txt | tr "duplicate" "not_duplicate"

Korvattava merkkijononi on lyhyempi kuin korvattava merkkijono, joten se ei sopinut.

Merkistö

Tähän mennessä olet huomannut, että on olemassa useita merkistöjä, joita ”tr” tukee. Vaikka useita niistä käytettiin yllä olevissa esimerkeissä, muut merkkisarjat ovat myös varsin hyödyllisiä. Tässä on luettelo kaikista tuetuista merkkiluetteloista.

POSIX-merkistö

  • [: numero:]: Numerot 0-9
  • [: alfa:]: Aakkoset a-z ja A-Z.
  • [: alnum:]: aakkosnumeeriset merkit
  • [: punct:]: välimerkkisymbolit
  • [: välilyönti:]: Mikä tahansa välilyönti, esimerkiksi välilyönti, välilehti, FF, CR, NL, FF jne.
  • [: ylempi:]: Kaikki isot aakkoset
  • [: pienempi:]: Kaikki pienet aakkoset
  • [: cntrl:]: Kaikki ohjausmerkit (NL, CR, EXT, STX, ACK, SO, DC1, DC2, NAK, ETB, ESC, IS1, IS2, DEL jne.)

Muita merkistöjä

  • [A-Z]: Kaikki isot aakkoset
  • [a-z]: Kaikki pienet aakkoset
  • [0-9]: Kaikki numerot

Lopulliset ajatukset

On monia tapoja, joilla kaikki nämä tr: n ominaisuudet voivat hyödyttää käyttäjiä. Suosittelen aina tutustumaan kaikkiin käytettävissä oleviin vaihtoehtoihin ja perusteellisiin oppaisiin kaikilla Linux-työkaluilla heidän miehensä, info- ja ohjesivuillaan, koska ne voivat tarjota arvokkaampaa tietoa.

tr --apu

mies tr

info tr

Nauttia!

WinMouse lets you customize & improve mouse pointer movement on Windows PC
If you want to improve the default functions of your mouse pointer use freeware WinMouse. It adds more features to help you get the most out of your h...
Mouse left-click button not working on Windows 10
If you are using a dedicated mouse with your laptop, or desktop computer but the mouse left-click button is not working on Windows 10/8/7 for some rea...
Cursor jumps or moves randomly while typing in Windows 10
If you find that your mouse cursor jumps or moves on its own, automatically, randomly while typing in Windows laptop or computer, then some of these s...