我使用htop,看看哪些进程占用大量内存,因此我可以杀死它们。我有很多tmux会话和很多类似的流程。我怎样才能检查PID是哪个tmux窗格,所以我可以确定我正在杀死我想杀的东西?查找PID属于的tmux会话
2
A
回答
6
鉴于PID
在下面的行是目标PID号:
$ tmux list-panes -a -F "#{pane_pid} #{pane_id}" | grep ^PID
上述将识别其中PID
运行窗格。输出将是两个字符串。第一个数字应该与PID
相同,第二个数字(百分号)是“tmux窗格ID”。示例输出:
2345 %30
现在,您可以使用“TMUX窗格ID”杀窗格中没有为它“手动”搜索:
$ tmux kill-pane -t %30
要完全回答你的问题,为了找到* TMUX会议*一个PID属于,该命令可用于:
$ tmux list-panes -a -F "#{pane_pid} #{session_name}" | grep ^PID
# example output: 2345 development
这里的另一种可能有用的“线”:
所$ tmux list-panes -a -F "#{pane_pid} #{session_name}:#{window_index}:#{pane_index}" | grep ^PID
# example output: 2345 development:2:0
所有插值字符串(例如#{pane_pid}
)的描述可以在TMUX手册页在FORMATS
部分进行查找。
2
上面的答案为您提供了在窗格中运行的shell的pid,如果您想要查找运行在shell中的某些内容,那么您将会运气不佳。
尝试:
https://gist.github.com/nkh/0dfa8bf165a53832a4b5b17ee0d7ab12
这纸条给你所有的PID,以及该进程已打开的文件。我永远不知道在哪个会话,窗口,窗格,附加或不,我有一个文件打开,这有助于。
我还没有在另一台机器上试过它,告诉我你是否遇到任何问题。
需要安装lsof。
如果你只是想的PID,pstree是有用的,你可以modity脚本使用它(它已经有评论)
相关问题
- 1. 如何检查pid是否属于当前用户会话?
- 2. 在tmux会话中创建新的tmux会话
- 3. 全屏TMUX会话选择
- 4. tmux ctrl + d不会脱离会话
- 5. 在tmux中的会话之间切换?
- 6. 更改tmux保存会话的位置?
- 7. 在tmux会话中用于Neovim终端模式的用例
- 8. 查找mpirun命令的pid
- 9. 从文件加载tmux会话
- 10. 使用会话PID和JID提取SID
- 11. HttpSessionRequiredException:会话属性'registrationForm'必需 - 未在会话中找到
- 12. c#ManagementObjectSearcher用于查找具有PID的过程(及其描述)
- 13. 查找其中值属于
- 14. 查找其财产属于
- 15. 终端窗口中的tmux会话名称
- 16. 如何重新连接到我的byobu/tmux会话?
- 17. 第二个会话窗口中的Tmux网格边框
- 18. 来自不同机器的不同tmux会话列表?
- 19. 如何更改tmux会话的起始目录?
- 20. Python代码崩溃与分离的ssh + TMUX会话
- 21. 关于会话超时值的查询
- 22. 关于asp.net会话的查询
- 23. 通过PID查找进程名称
- 24. 在rails 3中查找会话ID
- 25. 从会话中查找用户ID
- 26. 查找元素属于的范围
- 27. 如何同时启动两个或多个tmux(或tmuxinator)会话?
- 28. tmux会话随机停止更新屏幕
- 29. TMUX会话执行shell,走了詹金斯筹建完成
- 30. 创建Linux屏幕会话,并得到它的PID