Nie, tr
jest specjalnie przeznaczony do wymiany pojedynczych znaków przez pojedynczych znaków (lub, w zależności od w opcjach wiersza poleceń, aby usunąć znaki lub zamienić przebiegi pojedynczego znaku o jedno wystąpienie.).
sed
jest prawdopodobnie najlepszym narzędziem do tego konkretnego zadania.
$ echo "asdlksad ~ adlkajsd ~ 12345" | sed 's/~/~\n/g'
asdlksad ~
adlkajsd ~
12345
(Zauważ, że wymaga sed
to interpretować luz-n \n
sekwencję jako znak nowej linii GNU sed to robi, ale POSIX robi” t. określił go z wyjątkiem wewnątrz wyrażenia regularnego, a na pewno są starsze wersje sed
że nie)