Ambos fazem a mesma coisa básica; eles redirecionam um descritor de arquivo do processo executado. A diferença está em como. Um pipe conecta o stdout de um processo ao stdin de outro, enquanto o redirecionamento redireciona de / para um arquivo ( >
do stdout para um arquivo, <
de um arquivo para stdin).