Я пытаюсь посмотреть, что произойдет с системным вызовом, когда я запустил одну команду, но, похоже, эта команда после | не отображается? например:Почему strace -f не может отслеживать прогресс ребенка после |?
strace -f cat a.txt| cat
Кажется, strace и -f периметр могут показать весь процесс. Я думаю, что последняя часть - это прогресс ребенка, созданный вилкой. Почему и как это сделать?
К сожалению, я должен использовать '' не cat' cats'. (вы можете обновить его, чтобы ваш ответ был идеальным). Теперь я использую ваше предложение (замените кошек на кошку). Я все еще не вижу команду fork() в выходе, вы знаете, почему? – fourth
В оболочке bash используется 'clone' not' fork'. Ищите это вместо этого. – kaylum
О, ты потрясающий! – fourth