Sua união mágica é um ponto-e-vírgula ... e chaves:
{ cat wordlist.txt ; ls ~/folder/* ; } | wc -l
Os chavetas estão agrupando apenas os comandos, de modo que o sinal de |canal afeta a saída combinada.
Você também pode usar parênteses em ()torno de um grupo de comandos, que executaria os comandos em uma subshell. Isso tem um conjunto sutil de diferenças com chaves, por exemplo, tente o seguinte:
cd $HOME/Desktop ; (cd $HOME ; pwd) ; pwd
cd $HOME/Desktop ; { cd $HOME ; pwd ; } ; pwd
Você verá que todas as variáveis de ambiente, incluindo o diretório de trabalho atual, são redefinidas após a saída do grupo de parênteses, mas não após a saída do grupo de chaves.
Quanto ao ponto e vírgula, as alternativas incluem os sinais &&e ||, que executam condicionalmente o segundo comando somente se o primeiro for bem-sucedido ou não, respectivamente, por exemplo,
cd $HOME/project && make
ls $HOME/project || echo "Directory not found."