O %
é seu prompt padrão.
Normalmente, isso aparecerá em uma linha própria
No entanto, isso depende do programa que você acabou de executar para terminar com um caractere LF. A maioria dos comandos faz isso automaticamente
por exemplo
% echo hello
hello
%
No entanto, os comandos não têm para fazer isso. Nesse caso, seu prompt é adicionado ao final da linha:
% printf "hello"
hello%
No seu caso, você removeu o \n
de sua saída com o comando tr
e, portanto, o prompt aparece na mesma linha.
Podemos demonstrar isso executando seu comando duas vezes, na mesma linha:
% echo 'Hello,World' | tr "\n" "% echo hello
hello
%
0" ; echo 'Hello,World' | tr "\n" "% printf "hello"
hello%
0"
Hello,WorldHello,World%