Depende da necessidade. Aqui está um caso em que usar nomes de arquivos ou linhas de stdin faz a diferença.
bash-4.1$ cat /etc/passwd /etc/group | wc -l
128
bash-4.1$ wc -l /etc/passwd /etc/group
49 /etc/passwd
79 /etc/group
128 total
bash-4.1$
Além disso, a entrada padrão tende a não ser muito lseek(3)
, portanto, se um aplicativo precisar de um descritor de arquivo que possa buscar (por exemplo, retroceder até o início), isso provavelmente excluiria a entrada padrão.