Відповіді:
strace
друкує свої сліди на стандартній помилці, а не на стандартному виведенні. Це тому, що зазвичай хочеться перенаправляти стандартний вихід програми, але зазвичай це не проблема, коли страдер stderr і stderr програми змішуються.
Тому вам слід перенаправити strace
stderr на stdout, щоб мати можливість передавати його:
sudo strace -p $(pgrep apache2) 2>&1 | grep open
за винятком того, що ви справді шукаєте
sudo strace -p $(pgrep apache2) -e open
strace: Invalid process id: '-e'
з останньою командою. Я на версії 4.8. 2010-03-30.
apache2
на ім’я процесу, який вас цікавить. Перевірте, чи pgrep
друкується один PID, інакше виберіть його та запустіть, наприкладsudo strace -p 1234 -e open
vim
підсвічування синтаксису кольорів? strace $CMD 2>&1 > /dev/null | vim -c ':set syntax=strace' -
.
open
дзвінки, я просто ставлю це як приклад, те, що я насправді намагаюся зробити, це виділення кольорів