MAC下的strace代替方案dtruss

  • dtruss 是什么

    参见strace

  • dtruss 的用法

lru@mac $ dtruss --help
/usr/bin/dtruss: illegal option -- -
USAGE: dtruss [-acdefholLs] [-t syscall] { -p PID | -n name | command | -W name }

          -p PID          # examine this PID
          -n name         # examine this process name
          -t syscall      # examine this syscall only
          -W name         # wait for a process matching this name
          -a              # print all details
          -c              # print syscall counts
          -d              # print relative times (us)
          -e              # print elapsed times (us)
          -f              # follow children
          -l              # force printing pid/lwpid
          -o              # print on cpu times
          -s              # print stack backtraces
          -L              # don't print pid/lwpid
          -b bufsize      # dynamic variable buf size
   eg,
       dtruss df -h       # run and examine "df -h"
       dtruss -p 1871     # examine PID 1871
       dtruss -n tar      # examine all processes called "tar"
       dtruss -f test.sh  # run test.sh and follow children
  • 使用dtruss调试进程
lru@mac $ dtruss -c -p 61397
  • 注意事项
lru@mac $ dtruss -c -p 61397
dtrace: failed to initialize dtrace: DTrace requires additional privileges

lru@mac $ sudo dtruss -c -p 61397
dtrace: failed to initialize dtrace: DTrace requires additional privileges

-- end --

你可能感兴趣的:(MAC下的strace代替方案dtruss)