Nie mam jasności co do sposobu -s, -toraz -cmożliwości pracy w tr polecenia. Kiedy robię
echo I am a good boy | tr good bad
Otrzymuję wynik:
I am a bddd bdy
Jest to całkiem zrozumiałe, ponieważ opowtarza się w good. Ostatnią możliwą zmianą w miejsce ojest d, a stąd wynik.
Teraz kiedy to zrobię
echo I am a good boy | tr -s good bad
wyjście jest
I am a bd bdy
-sOpcja ma wycisnąć powtarzającego wystąpienie każdego znaku w zestawie 1 do jednego wystąpienia i następnie zmienić każdy znak w zestawie 1 do odpowiedniego znaku w zestawie 2, który jest w tej samej pozycji.
Tak powinno być
I am a bad bay.
Skąd ta zmiana?
Co więcej, kiedy to zrobię
echo I am a good boy | tr -c good bad
dostaję dddddddgoodddodd
Jak działa -copcja w trodniesieniu do tego przykładu?
I wreszcie: jak zmienić się z dobrego chłopca w złego chłopca .... :): P To znaczy,
echo I am a good boy | tr <something>Daje mi wyjście jak: I am a bad boy.
-sprzełącznik powodujetrwyciskanie dowolnych znaków z ostatniego argumentu natr(nie pierwszy, jak mówisz), które są powtarzane na wejściu. Jest to zauważono w artykule ty związane i wyjaśnione w ostatnim akapicie, w sekcji „Opis” na stronie man .