Conforme o exemplo a seguir e como na minha pergunta recente No bash, para onde foi o último caractere da nova linha? , Eu quero saber "por que" isso acontece
x="$(echo -ne "a\nb\n")" ; echo -n "$x" | xxd -p
# Output is: 610a62
# The trailing newline from the 'echo' command
# has been "deleted" by Command Substitution
Eu suponho que deve haver alguma razão muito significativa para uma ação do shell, ou seja, Substituição de Comando, para realmente excluir alguns dados da saída de comando que está substituindo ...
mas não consigo entender esse, como parece ser a antítese do que é suposto fazer .. ie. passar a saída de um comando de volta ao processo de script ... Reter um caractere me parece estranho, mas suponho que exista uma razão sensata para isso ... Estou ansioso para descobrir qual é esse motivo. .