logo

tr w systemie Unix/Linux z przykładami

The tr Command to narzędzie wiersza poleceń systemu UNIX służące do tłumaczenia lub usuwania znaków. Obsługuje szereg transformacji, w tym wielkie i małe litery, wyciskanie powtarzających się znaków, usuwanie określonych znaków oraz podstawowe wyszukiwanie i zamienianie. Można go używać z potokami UNIX w celu obsługi bardziej złożonych tłumaczeń. tr oznacza tłumaczenie.

Składnia:



 $ tr [OPTION] SET1 [SET2]>

Opcje -c: uzupełnia zestaw znaków w ciągu, tj. operacje dotyczą znaków spoza podanego zestawu -d: usuwa z wyniku znaki z pierwszego zestawu. -s: zastępuje powtarzające się znaki ze zbioru 1 pojedynczym wystąpieniem -t: obcina zbiór 1.

Przykładowe polecenia

1. Jak zamienić małe litery na wielkie. Aby przekonwertować znaki z małych na wielkie, możesz określić zakres znaków lub skorzystać z predefiniowanych klas znaków.



znajdź mój iPhone z Androidem
 $ cat greekfile>

Wyjście:

WELCOME TO techcodeview.com>
 $ cat greekfile | tr [a-z] [A-Z]>

Wyjście:

WELCOME TO GEEKSFORGEEKS>

Lub



 $ cat greekfile | tr [:lower:] [:upper:]>

Wyjście:

WELCOME TO GEEKSFORGEEKS>

Alternatywnie możesz podać dane wejściowe dla pliku tr polecenie wykorzystujące przekierowanie:

tworzenie instancji Java
 tr [:lower:] [:upper:]>

Wyjście:

WELCOME TO GEEKSFORGEEKS>

2. Jak przetłumaczyć białe znaki na tabulatory. Poniższe polecenie tłumaczy wszystkie białe znaki na tabulatory

 $ echo 'Welcome To techcodeview.com' | tr [:space:] '	'>

Wyjście:

Welcome To techcodeview.com>

W poprzednim przykładzie możemy również użyć przekierowania, aby zapewnić dane wejściowe tr . Chociaż tym razem użyjemy do tego ciągu znaków:

dyskretna negacja matematyki
 tr [:space:] '	' <<< 'Welcome To techcodeview.com'>

Wyjście:

Welcome To techcodeview.com>

3. Jak przetłumaczyć nawiasy klamrowe na nawiasy. Możesz także tłumaczyć z i do pliku. W tym przykładzie przetłumaczymy nawiasy klamrowe w pliku z nawiasami.

 $ cat greekfile>

Wyjście:

{WELCOME TO} techcodeview.com>
 $ tr '{}' '()' newfile.txt>

Wyjście:

(WELCOME TO) techcodeview.com>

Powyższe polecenie odczyta każdy znak z geekfile.txt, przetłumaczy, jeśli jest to nawias klamrowy, i zapisze dane wyjściowe do newfile.txt.

4. Jak wycisnąć sekwencję powtarzających się znaków za pomocą opcji -s. Aby wycisnąć powtarzające się wystąpienia znaków określonych w zestawie, użyj opcji -s. Spowoduje to usunięcie powtarzających się wystąpień znaków z ostatniego określonego SET-u. LUB możemy to powiedzieć, możesz przekonwertować wiele ciągłych spacji na jedną spację

 $ echo 'Welcome To techcodeview.com' | tr -s ' '>

Wyjście:

Welcome To techcodeview.com>

I ponownie wykonaj to samo zadanie, ale używając tutaj ciągu znaków:

 tr -s ' ' <<< 'Welcome To techcodeview.com'>

Wyjście:

połącz bazę danych Java
Welcome To techcodeview.com>

5. Jak usunąć określone znaki za pomocą opcji -d. Aby usunąć określone znaki, użyj opcji -d. Ta opcja usuwa znaki z pierwszego określonego zestawu.

 $ echo 'Welcome To techcodeview.com' | tr -d W>

Wyjście:

elcome To techcodeview.com>

Lub równoważnie użyj:

 tr -d W <<< 'Welcome to techcodeview.com'>

Wyjście:

znaczniki HTML
elcome To techcodeview.com>

6. Aby usunąć wszystkie cyfry z ciągu, możesz użyć

 $ echo 'my ID is 73535' | tr -d [:digit:]>

Lub

 $ tr -d [:digit:] <<< 'my ID is 73535'>

Wyjście:

my ID is>

7. Jak uzupełnić zbiory za pomocą opcji -c Możesz uzupełnić SET1 za pomocą opcji -c. Na przykład, aby usunąć wszystkie znaki z wyjątkiem cyfr, możesz użyć następujących poleceń.

 $ echo 'my ID is 73535' | tr -cd [:digit:]>

Lub

 $ tr -cd [:digit:] <<< 'my ID is 73535'>

Wyjście:

73535>