我在给定的终端在Linux中已停止进程。现在我在另一个终端。我如何开始这个过程。我会发送什么样的杀手信号。我拥有这个过程。如何在Linux中启动已停止的进程
5
A
回答
8
4
除了@ Dave的回答,还有一个advanced method用于使用GDB重定向正在运行的程序的输入和输出文件描述符。
一个FreeBSD例如对于任意的外壳脚本具有PID 4711:
> gdb /bin/sh 4711
...
Attaching to program: /bin/sh, process 4711
...
(gdb) p close(1)
$1 = 0
(gdb) p creat("/tmp/testout.txt",0644)
$2 = 1
(gdb) p close(2)
$3 = 0
(gdb) p dup2(1,2)
$4 = 2
EDIT - 解释:这将关闭的文件句柄1,然后打开一个文件,该文件重用1。然后它关闭文件句柄2次重复文件句柄1到2.
现在这个过程'stdout
和stderr
转到指定的文件,并从那里读取。如果需要stdin
,则需要p close(0)
,然后附加一些输入文件或PIPE或smth。
目前,我找不到一种方法从控制终端远程disown
这个过程,这意味着当终端退出时,这个过程接收到SIGHUP
信号。
注意:如果您确实有/获得访问其他终端,您可以disown -a
,以便此过程将在终端关闭后继续运行。
+0
这是一个很酷的技术。我没有想过使用调试器重新路由STDOUT。 – 2011-05-11 15:51:05
相关问题
- 1. Linux守护进程停止启动 - 停止守护进程
- 2. 如何在Python中使用子进程模块启动和停止Linux程序?
- 3. Yajsw停止INFO在linux下启动停止守护进程时记录消息
- 4. 通过C++代码在Linux上启动/停止守护进程
- 5. 在应用程序启动时停止已启动的服务
- 6. 如何停止由android.exe中的run.exec()启动的进程
- 7. 在群集中启动和停止hadoop守护进程/进程
- 8. 有没有办法用python启动/停止linux进程?
- 9. 停止postgres进程重新启动 - mac
- 10. Gracefuly停止.net启动Java进程
- 11. 启动 - 停止守护进程和Python
- 12. 启动后立即停止进程
- 13. 如何在Linux中停止屏幕进程?
- 14. 如何避免在Linux中停止python进程?
- 15. 如何捕捉新进程的启动和停止?
- 16. Linux内核启动在Uncompressing Linux中停止...好吧,启动内核
- 17. 停止Linux中的所有CUDA进程而不重新启动计算机?
- 18. 启动停止的线程?
- 19. 启动和停止Mongrel Rails启动时的另一个进程
- 20. 如何停止/启动线程?
- 21. 如何启动停止线程
- 22. 如何管理ruby工作进程的启动,停止和重新启动?
- 23. 如何暂停/重启C(linux)中的进程
- 24. 如何在等待其他方法启动和停止每3秒停止一个java程序中的进程
- 25. 如何在Spring-Boot中启动(并最终停止)守护进程线程?
- 26. 如何启动/停止Licode?
- 27. 如何启动/停止AccesibilityService?
- 28. 如何启动/停止ResponsiveSlides.js?
- 29. 如何知道进程是否已在Linux中启动但崩溃
- 30. 如何启动和停止中的Django
属于http://unix.stackexchange.com。 – hammar 2011-05-09 22:12:25