crash命令 —— foreach

参考:https://crash-utility.github.io/help_pages/foreach.html

用法:

  • 在所有的进程上执行命令
    • 这里的命令支持如下:
      命令 可选参数 用途
      bt -r -t -l -e -R -f -F -o -s -x -d 查看调用栈
      vm -p -v -m -R -d -x 进程的用户虚拟内存信息
      task -R -d -x 查看进程的task_struct结构内容
      files -c -R 查看进程打开的文件的信息
      net -s -S -R -d -x
      set
      ps -G -s -p -c -t -l -a -g -r -y
      sig -g
      vtop -c -u -k

foreach <命令>

  • 在指定的进程上执行命令
    foreach <进程的pid> <cmd>foreach <进程的task_struct地址> <cmd>

  • 在指定名字的进程上执行命令
    foreach <名字> <cmd>

  • 在所有的用户线程上执行命令
    foreach user <cmd>

  • 在所有的用户线程组的组长进程上执行命令
    foreach gleader <cmd>

  • 在所有的内核线程上执行命令
    foreach kernel <cmd>

  • 在所有当前正在cpu上运行的线程上执行命令
    foreach active <cmd>

  • 在特定运行状态的进程上执行命令

    • 目前支持如下一些运行状态过滤:
      状态 含义
      RU 可运行态
      IN 可中断睡眠
      UN 不可中断睡眠
      ST 停止状态
      ZO 僵尸状态
      TR 跟踪态
      SW SWAPPING态
      DE 死亡态
      WA Waking态
      PA Park态
      ID IDLE态
      NE NEW态

foreach UN <cmd> : 在所有处于不可中断状态的进程上执行命令

posted @ 2022-05-29 09:58  摩斯电码  阅读(466)  评论(0编辑  收藏  举报