Fazendo uma linha de cada vez, dividindo cada linha ao meio:
ps ax >mytemp; more <mytemp
Obtém a saída de ps ax
e a coloca em um arquivo chamado mytemp
. O ponto e vírgula marca o início de um comando separado na mesma linha. O segundo comando pega o conteúdo de mytemp
e os alimenta em more
(um pager que exibe o arquivo tela a tela). Suas notas dizem que isso é o mesmo que ps ax | more
, o que é verdade, exceto que ele não cria um arquivo mytemp
temporário. Ambas efetivamente pegam a saída de ps ax
e eventualmente a transformam na entrada padrão para more
Segunda linha:
cat mytemp | grep barrymp
Imprime o conteúdo de um arquivo chamado mytemp
para stdout que é então redirecionado para a entrada padrão para o comando grep
que recebeu barrymp
para filtrar a saída de.
As notas dizem que é o mesmo que ps ax | grep "barrymp"
. Eu estou supondo que isso é porque é suposto ser o mesmo mytemp
da primeira linha. A segunda metade dessa linha também ignora o arquivo temporário e vai direto para redirecionar a saída do comando para o pipe para grep.
Tentei dividi-lo o máximo que pude pensar, deixe-me saber se ainda não está claro.