ちょっとした作業で、「\n」とか「\t」で改行やタブが記述されている内容を、通常どおり改行やタブとして出力させたいということがあり、そのためにechoやprintfに標準入力を渡す必要があった。 で、以下のようにcatと組み合わせることで、echoやprintfにパイプから出力を渡すことができる。

echo "aaa\\tbbb\\nccc\\tddd" | echo -e $(cat)
echo "aaa\\nbbb" | printf $(cat)

[root@BS-PUB-CENT7-01 ~]# echo "aaa\\tbbb\\nccc\\tddd"
aaa\tbbb\nccc\tddd
[root@BS-PUB-CENT7-01 ~]# echo "aaa\\tbbb\\nccc\\tddd" | echo -e $(cat)
aaa     bbb
ccc     ddd
[root@BS-PUB-CENT7-01 ~]# echo "aaa\\tbbb\\nccc\\tddd" | printf $(cat)\\n
aaa     bbb
ccc     ddd