所以我使用GNU Screen来pipe理多个运行脚本/程序。 复用和分离是相当有用的。
我从磁盘中删除了脚本,现在我在查找备份时遇到了一些麻烦。 但是,其中一个terminal会话在文件被删除之前正在执行脚本,并继续正常工作。
有没有办法劫持正在运行脚本的terminal会话来恢复这个文件的内容?
使用ps
查找脚本的pid
ps -ef|grep script.sh Fdo 8983 8463 0 12:28 pts/2 00:00:00 /bin/bash ./script.sh
检查/proc/$PID/fd/
; 应该有一个到脚本文件的链接断开,但cat
应该工作(而脚本正在运行!):
cat /proc/8983/fd/255 #!/bin/bash # script contents!
祝你好运!