Пакет moreutils предоставляет команду pee (слияние трубы и тройника, что вы думаете?), которая делает именно это.
Для вашего первого примера вы бы использовали: [ ! d1]
cat testfile | pee wc "tail -n 5"
Второй пример более сложный, потому что вы хотите передать два входа в последнюю команду. Я бы, вероятно, использовал awk в качестве других ответов.
Ссылка: https://joeyh.name/code/moreutils/