Пожалуйста, объясните это так, чтобы я мог понять:
ps ax >mytemp; more <mytemp … same as … ps ax | more
cat mytemp | grep barrymp … same as … ps ax | grep “barrymp”
решение1
Разбираем по одной строке за раз, разделяя каждую строку пополам:
ps ax >mytemp; more <mytemp
Берет вывод ps ax
и помещает его в файл с именем mytemp
. Точка с запятой отмечает начало отдельной команды в той же строке. Вторая команда берет содержимое mytemp
и передает его в more
(пейджер, который отображает файл экран за экраном). Затем ваши заметки говорят, что это то же самое, что и , ps ax | more
за исключением того, что он не создает временный mytemp
файл. Оба фактически берут вывод ps ax
и в конечном итоге делают его стандартным вводом дляmore
Вторая линия:
cat mytemp | grep barrymp
Выводит содержимое файла, вызываемого mytemp
на stdout, который затем перенаправляется на стандартный ввод для grep
команды, которая была задана barrymp
для фильтрации вывода.
В примечаниях затем говорится, что это то же самое, что и ps ax | grep "barrymp"
. Я предполагаю, что это потому, что это должно быть то же самое mytemp
из первой строки. Вторая половина этой строки также пропускает временный файл и просто переходит прямо к перенаправлению вывода команды в канал для grep.
Постарался разложить все по полочкам, если что-то все еще непонятно, дайте знать.