-
O caractere de canal
|
é um caractere meta porque termina uma palavra que não é citada. Isso é necessário para tornar a linguagem shell fácil de entender. -
O modo como os shells criam os vários processos para um pipeline não é padronizado e difere entre as implementações.
O Bourne Shell originalmente criou um sub-shell
que então se torna o pai de todos os processos de um pipeline e finalmente inicia o programa mais à direita no pipeline. Esse é o método que precisa de menos código que outros métodos e que permite implementar o controle de tarefas simples.
Bash funciona de maneira semelhante.
O Ksh93 faz com que todo processo de um pipeline seja um filho direto do shell original.