tr on komentorivin apuohjelma Linux-ja Unix-järjestelmissä, joka muuntaa, poistaa, ja puristaa merkkiä vakiosyötettä ja kirjoittaa tuloksen vakiotulosteeseen.

tr komento voi tehdä toimintoja, kuten poistaminen toistuvaa merkkejä, muuntaa isoja että pieniä kirjaimia, ja perus merkin vaihtaminen ja poistaminen. Tyypillisesti sitä käytetään yhdessä muiden komentojen kanssa putkiston kautta.,

tässä opetusohjelmassa näytetään, miten tr – komentoa käytetään käytännön esimerkkien ja yksityiskohtaisten selitysten avulla yleisimmistä vaihtoehdoista.

Kuinka Käyttää tr-Komento #

syntaksi tr komento on seuraava:

tr OPTION... SET1 

tr hyväksyy kaksi erilaista merkkiä, yleensä sama pituus, ja korvaa merkkiä ensimmäistä sarjaa vastaavaan merkkejä toisesta.,

SET on pohjimmiltaan merkkijonon, mukaan lukien erityinen kenoviiva-karannut merkkiä.

seuraavassa esimerkissä tr korvaa kaikki merkit alkaen standard input (linuxize), kartoittamalla hahmoja ensimmäiset matching niistä peräisin toisesta.,

echo 'linuxize' | tr 'lin' 'red'

Jokainen esiintyminen l korvataan r, i e, ja n d:

reduxeze

merkistöt voidaan määritellä myös käyttämällä luonne vaihtelee., Esimerkiksi kirjoittamisen sijaan:

echo 'linuxize' | tr 'lmno' 'wxyz'

käyttö:

echo 'linuxize' | tr 'l-n' 'w-z'

Kun -c (--complement) vaihtoehto on käytössä, tr korvaa kaikki merkit, jotka eivät ole SET1.

alla olevassa esimerkissä kaikki merkit paitsi ”li” korvataan viimeinen merkki, toinen sarja:

echo 'linuxize' | tr -c 'li' 'xy'
liyyyiyyy

Kuten olet ehkä huomannut, lähtö yläpuolella, on yksi näkyvä merkki kuin tulo., Tämä on koska echo komento tulostaa näkymätön rivinvaihtomerkkiä \n, joka on myös korvata y. Jos haluat kaikua merkkijonon ilman uutta riviä, käytä-n – vaihtoehtoa.

-d (--delete) vaihtoehto kertoo tr poista merkkejä määritelty SET1. Kun poistat merkkejä puristamatta, määritä vain yksi joukko.,

– komennon alla poistaa l, i ja z merkit:

echo 'Linuxize' | tr -d 'liz'

L merkki ei ole poistettu, koska tulo sisältää isoja L vaikka l hahmo on ASETETTU pieniksi.

Lnuxe

-s (--squeeze-repeats) vaihtoehto korvaa järjestyksessä toistuvien tapahtumien luonne asettaa viimeksi ASETETTU.,

seuraavassa esimerkissä tr poistaa toistuva tilaa merkkejä:

echo "GNU \ Linux" | tr -s ' '
GNU \ Linux

Kun SET2 käytetään sekvenssi merkki määritelty SET1 on korvattu SET2.

echo "GNU \ Linux" | tr -s ' ' '_'
GNU_\_Linux

-t (--truncate-set1) vaihtoehto voimia tr katkaista SET1 pituus SET2 ennen jatkokäsittelyä.,

oletuksena, jos SET1 on suurempi kuin SET2 tr uudelleen viimeinen merkki SET2. Tässä on esimerkki:

echo 'Linux ize' | tr 'abcde' '12'

lähtö osoittaa, että merkki e alkaen SET1 on sovitettu uusin luonnetta SET2, joka on 2:

Linux iz2

Nyt, käytä sama komento, jossa -t vaihtoehto:

echo 'Linux ize' | tr -t 'abcde' '12'
Linux ize

Voit nähdä, että kolme viimeistä merkkiä SET1 poistetaan., SET1: stä tulee ”ab”, joka on saman pituinen kuin SET2, eikä korvaajaa tehdä.

Yhdistämällä vaihtoehtoja #

tr – komennon avulla voit myös yhdistää sen vaihtoehtoja. Esimerkiksi seuraava komento ensimmäisen korvaa kaikki merkit paitsi i 0 ja sitten puristaa toistuva 0 merkit:

echo 'Linux ize' | tr -cs 'i' '0'
0i0i0

Tr Komento Esimerkkejä #

tässä osiossa kerromme muutamia esimerkkejä tavallisia käyttötarkoituksia tr komento.,

Muunna pienet kirjaimet isoiksi #

Muuntaa pienet kirjaimet isoiksi tai taaksepäin on yksi tyypillisiä käyttötapauksia tr komento. ottelut kaikki pienillä kirjaimilla ja ottelut kaikki isoja kirjaimia.

echo 'Linuxize' | tr '' ''
LINUXIZE

sen Sijaan, että hahmoluokkaa, voit myös käyttää alueet:

echo 'Linuxize' | tr 'a-z' 'A-Z'

muuntaa isot kirjaimet ja pienet kirjaimet, yksinkertaisesti vaihtaa paikkoja sarjaa.,

Poista kaikki ei-numeerisia merkkejä #

seuraava komento poistaa kaikki ei-numeerisia merkkejä:

echo "my phone is 123-456-7890" | tr -cd 

tarkoittaa kaikkien numeroinen merkkiä, ja käyttämällä -c optio, komento poistaa kaikki ei-numero merkkejä.,näyttää tältä:

1234567890

Laittaa jokainen sana new line – #

laittaa jokainen sana new line, meidän täytyy sovittaa kaikki ei-aakkosnumeerisia merkkejä ja korvata ne uudella linjalla:

echo 'GNU is an operating system' | tr -cs '' '\n'
GNUisanoperatingsystem

Poista tyhjät rivit #

poista tyhjät rivit yksinkertaisesti purista toistuvia rivinvaihto merkkiä:

tr -s '\n' < file.txt > new_file.txt

komento edellä käytämme uudelleenohjaus symboli < siirtää sisältöä file.txt ja tr komento., Uudelleenohjaus > kirjoittaa lähtö komento new_file.txt.

Print $POLKU hakemistoja erillinen linja #

$PATH ympäristön muuttuja on kaksoispisteillä eroteltu lista hakemistoista, joka kertoo kuori, joka hakemistoja etsiä suoritettavia tiedostoja, kun kirjoitat komennon.,

tulostaa jokaisen hakemistoon erillinen linja meidän täytyy sovittaa paksusuolen (:) ja vaihda sen tilalle uusi rivi:

echo $PATH | tr ':' '\n'
/usr/local/sbin/usr/local/bin/usr/sbin/usr/bin/sbin/bin

Johtopäätös #

tr komento kääntämiseen tai poistamalla merkkejä.

Vaikka erittäin hyödyllinen, tr voi työskennellä vain yhden merkin. Monimutkaisempia kaavoja ja string manipulointia, sinun tulisi käyttää sed tai awk .

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *