w Linuksie” tr „jest wbudowanym narzędziem, które może” tłumaczyć, wyciskać i / lub usuwać znaki ze standardowego wejścia, zapisując na standardowe wyjście” (ze strony man).
z oficjalnego opisu łatwo zrozumieć wartość tego narzędzia. Linux wymyśla dużą kolekcję wbudowanych narzędzi. Istnieją specjalne, które są bardzo przydatne do manipulacji tekstem. Omówiliśmy już wiele z nich, takich jak Vim, Nano, awk, sed i inne narzędzia.,
ci, którzy regularnie pracują z tekstami, „tr” na pewno będzie naprawdę, naprawdę przydatny. Ten artykuł zilustruje najczęstsze użycie „tr” z wystarczającymi przykładami.
Uwaga: w samouczku będzie używana masa atrap plików z losową zawartością. Wszystkie losowe ciągi są generowane przez Random.org.
jest to pełna ścieżka narzędzia poleceń „tr”.
podstawowe użycie
aby użyć narzędzia „tr”, musisz użyć następującej struktury poleceń.,
istnieją różne opcje i sposoby manipulowania tekstami za pomocą „tr”. Na początku sprawdźmy ten plik demo.
wszystkie znaki są pisane małymi literami, prawda? Przekształćmy je na wielkie litery!
pierwszy parametr „tr” oznacza wykonanie tłumaczenia na wszystkich małych znakach wejścia. Druga część mówi, aby przekształcić je na wielkie litery na wyjściu.
teraz zróbmy odwrotnie.
istnieje również inny sposób wykonania tego samego zadania. Sprawdźmy to.,
teraz, zamiast mówić „tr”, aby tłumaczyć wielkie litery na małe lub małe na wielkie, powiedzieliśmy, aby zidentyfikować wpisy pasujące do zakresu „a” do „z” i przetłumaczyć na ich odpowiednik z zakresu „a” do „Z”.
ta podobna metoda może być również używana do tłumaczenia wielkich liter na małe.
gra liczbami
widzieliśmy, jak tłumaczyć wielkie litery na małe, prawda?, Czas się pobawić cyframi.
korzystając z poniższego polecenia, możemy łatwo przetłumaczyć wszystkie cyfry (0-9) na ich równoważne znaki!
Super! A co z wielkimi literami?
proste, ale ciekawe, prawda? Możemy również przekształcać znaki na cyfry!,
uh oh, wygląda na to, że coś się zepsuło, prawda? Cóż, możemy użyć tylko ” a ” do „j”, aby reprezentować pojedyncze cyfry. Jeśli jest jakiś znak, który nie jest związany, „tr” zastąpi znak']'.
Usuwanie znaków
jak sugeruje oficjalny opis, „tr” może zrobić więcej niż tylko tłumaczenie znaków., W poniższym przykładzie dowiemy się, jak użyć „tr”, aby usunąć niektóre znaki.
teraz usuńmy wszystkie liczby z zawartości.
tutaj flaga „-d” mówi „tr” do usunięcia i oznacza cyfry do usunięcia.
możemy to zrobić również za pomocą znaków. Poniższe polecenie zachowa wszystkie liczby, ale usunie wszystkie znaki.,
Co powiesz na usunięcie tylko jednego konkretnego znaku z pliku?
usunął wszystkie wpisy 'y' z pliku.
wyciskanie powtarzanych znaków
zdarzają się sytuacje, kiedy znak jest powtarzany sekwencyjnie., Jeśli masz do czynienia z takimi irytującymi problemami, po prostu pozwól „tr” się tym zająć! Używając poniższego polecenia, możesz wycisnąć takie zdarzenia. Zasadniczo zachowuje początkowe wystąpienie postaci i usuwa dodatkowe.
najpierw czas sprawdzić jak wygląda plik demo.
teraz przekaż zawartość do „tr”.
tutaj parametr „-s” jest wskaźnikiem do wykonania akcji „squeeze”.
łamanie/łączenie zdań
sprawdźmy plik demo.
zawiera zdanie ze spacjami dzielącymi słowa, Prawda? Podzielmy słowa na nowe linijki.
To polecenie zastąpiło wszystkie znaki spacji znakami nowej linii.
połączmy złamane zdanie w długie zdanie.
tłumaczenie znaków
tak jak tłumaczyliśmy znaki wcześniej, tym razem zrobimy to samo, ale tylko z jednym znakiem.,
w tym pliku zmieńmy wszystkie znaki nowej linii na średnik.
musiałem zawinąć go wokół „echo”. W przeciwnym razie utworzyłoby to pewne wyjście, ponieważ ostatni znak nowej linii również zostałby przetłumaczony na średnik.
istnieje inny sposób zmiany znaków. Jednak ten jest trudniejszy do kontrolowania.
Wow! Owińmy go wokół „echo”, aby lepiej zrozumieć wyjście.
Co Tu się stało? Używając flagi „- c”, ” tr ” zachowa tylko znak docelowy bez zmian., W przypadku niedopasowania każda inna postać zostanie przekształcona. W tym przypadku każdy znak inny niż ” b „został zastąpiony przez „z”.
tłumaczenie ciągów
„tr” może również pracować z ciągami. Wykonajmy zastąpienie Sznurka.
mój łańcuch do zastąpienia jest krótszy niż łańcuch do zastąpienia, więc nie pasuje.,
zestawy znaków
już zauważyłeś, że istnieje wiele zestawów znaków obsługiwanych przez „tr”. Niektóre z nich zostały użyte w powyższych przykładach, Inne zestawy znaków również są bardzo pomocne. Oto lista wszystkich obsługiwanych list znaków.
zestawy znaków POSIX
dodatkowe zestawy znaków
- : wszystkie alfabety wielkich liter
- : wszystkie alfabety małych liter
- : wszystkie cyfry
myśli końcowe
istnieje wiele sposobów, w jaki wszystkie te funkcje „tr” mogą przynieść korzyści użytkownikom., Zawsze polecam zapoznanie się ze wszystkimi dostępnymi opcjami i szczegółowymi przewodnikami po dowolnym narzędziu Linuksowym ze stron man, info i pomoc, ponieważ mogą one zaoferować bardziej wartościową wiedzę.
enjoy!
Leave a Reply