Ctrl-D não funciona apenas em uma linha nova, como você diz. Tome rev , por exemplo, que inverte cada linha de entrada.
Normalmente, você pressiona Enter após a entrada e inverte a linha:
$ rev
asdf
fdsa
Se você não quiser acrescentar uma nova linha à sua entrada, pressione Ctrl-D duas vezes depois de inserir asdf , ela será invertida na mesma linha:
$ rev
asdffdsa
Programas diferentes lidam com isso de maneira diferente; por exemplo bc não se comporta como acima.