In Linux is ” tr “een ingebouwde tool die” karakters kan vertalen, knijpen en/of verwijderen van standaard invoer, schrijven naar standaard uitvoer ” (van man page).
uit de officiële beschrijving is het gemakkelijk om de waarde van deze tool te begrijpen. Linux komt met een grote verzameling van ingebouwde tools. Er zijn een aantal speciale die zijn super nuttig voor tekst manipulatie. We hebben al een aantal van die, zoals Vim, Nano, awk, sed en andere tools.,
degenen die regelmatig met teksten werken, zal” tr ” zeker heel, heel nuttig zijn. Dit artikel zal het meest voorkomende gebruik van “tr” illustreren met voldoende voorbeelden.
Opmerking: De tutorial zal een ton dummy bestanden met willekeurige Inhoud gebruiken. Alle willekeurige tekenreeksen worden gegenereerd door Random.org.
Dit is het volledige pad van het” TR ” Commando Gereedschap.
basisgebruik
Voor het gebruik van het gereedschap” tr ” moet u de volgende opdrachtstructuur gebruiken.,
Er zijn verschillende opties en manieren om de teksten te manipuleren met behulp van “tr”. Laten we eerst deze demo bekijken.
alle tekens staan in kleine letters, toch? Laten we ze omzetten in hoofdletters!
Hier geeft de eerste parameter van “tr” aan dat een vertaling moet worden uitgevoerd op alle kleine letters van de invoer. Het tweede deel vertelt hen om te zetten in hoofdletters aan de uitgang.
laten we nu het tegenovergestelde doen.
Er is ook een andere manier om dezelfde taak uit te voeren. Laten we gaan kijken.,
nu, in plaats van “tr” te vertellen om hoofdletters naar kleine of kleine letters naar hoofdletters te vertalen, vertelden we om items te identificeren die overeenkomen met het bereik “a” tot “z” en te vertalen in hun equivalent van het bereik “A” tot “Z”.
deze soortgelijke methode kan ook worden gebruikt om hoofdletters naar kleine letters te vertalen.
spelen met getallen
we zagen hoe hoofdletters naar kleine letters te vertalen, toch?, Het is tijd om met cijfers te spelen.
met het volgende commando kunnen we eenvoudig alle cijfers (0-9) vertalen naar hun gelijkwaardige karakters!
Awesome! Wat dacht je van hoofdletters?
eenvoudig, maar interessant, toch? We kunnen ook karakters omzetten in cijfers ook!,
Uh oh, het lijkt erop dat de dingen stuk zijn gegaan, toch? Nou, we kunnen alleen ‘a’ tot ‘j’ gebruiken om enkele cijfers voor te stellen. Als er een teken is dat buiten deze gebonden is, zal” tr ” het teken vervangen door ‘]’.
Karakters verwijderen
zoals de officiële beschrijving suggereert, kan “tr” meer doen dan alleen de vertaling van karakters., In het volgende voorbeeld bekijken we hoe je “tr” kunt gebruiken om bepaalde tekens te verwijderen.
laten we nu alle getallen uit de inhoud verwijderen.
Hier is de “-d” – vlag om “tr” aan te geven om te verwijderen en om de te verwijderen cijfers aan te geven.
dat kunnen we ook doen met de karakters. Het volgende commando zal alle nummers behouden, maar alle tekens verwijderen.,
hoe zit het met het verwijderen van slechts een enkel specifiek teken uit het bestand?
Het heeft alle ‘y’ – items uit het bestand verwijderd.
knijpen van herhaalde tekens
Er zijn momenten waarop een teken opeenvolgend wordt herhaald., Als je te maken hebt met dergelijke vervelende problemen, laat gewoon “tr” zorgen voor het! Met behulp van het volgende commando, kunt u dergelijke gebeurtenissen knijpen. Het houdt in wezen het eerste voorkomen van het karakter en verwijdert de extra degenen.
eerste, tijd om te controleren hoe het demo bestand eruit ziet.
geef de inhoud nu door aan”tr”.
Hier is de “-s” parameter de indicator voor het uitvoeren van de “squeeze” actie.
zinnen breken / samenvoegen
laten we het demobestand bekijken.
Het bevat een zin met spaties die de woorden verdelen, toch? Laten we de woorden opsplitsen in nieuwe regels.
Dit commando heeft alle spatietekens vervangen door nieuwe regeltekens.
laten we de gebroken zin weer samenvoegen tot een lange zin.
karakters
vertalen net zoals we eerder karakters hebben vertaald, doen we dit keer hetzelfde, maar met slechts één teken.,
in dit bestand veranderen we alle nieuwe regeltekens in een puntkomma.
Ik moest het rond “echo” wikkelen. Anders zou het wat uitvoer creëren omdat het laatste newline teken ook zou worden vertaald in een puntkomma.
Er is een andere manier om karakters te veranderen. Deze is echter moeilijker te controleren.
Wow! Laten we het rond “echo” wikkelen om de uitvoer beter te begrijpen.
Wat is hier gebeurd? Met behulp van de” – c “vlag,” tr ” zal alleen het doel karakter ongewijzigd te houden., In het geval van mismatch, elk ander karakter zal worden getransformeerd. Hier werd elk ander teken dan’ b ‘vervangen door’z’.
het vertalen van tekenreeksen
“tr” kan ook werken met tekenreeksen. Laten we de tekenreeks vervangen.
Mijn te vervangen tekenreeks is korter dan de te vervangen tekenreeks, dus het paste niet.,
tekensets
u hebt inmiddels gemerkt dat er een aantal tekensets zijn die door “tr”worden ondersteund. Terwijl een aantal van hen werden gebruikt in de bovenstaande voorbeelden, andere karakters sets zijn ook heel nuttig. Hier is een lijst van alle ondersteunde karakterlijsten.
POSIX-tekensets
extra tekensets
- : alle hoofdletters
- : alle kleine alfabetten
- : alle cijfers
laatste gedachten
Er zijn tal van manieren waarop al deze functies van “tr” de gebruikers ten goede kunnen komen., Ik raad altijd aan om alle beschikbare opties en diepgaande gidsen te bekijken op elke Linux-tool van hun man -, info-en help-pagina ‘ s omdat ze meer waardevolle kennis kunnen bieden.
Genieten!
Leave a Reply