Linux

從終端會話中恢復正在執行的腳本

  • July 20, 2017

所以我使用GNU Screen來管理多個正在執行的腳本/程序。多路復用和可分離性非常有用。

我從磁碟中刪除了一個腳本,現在我在查找備份時遇到了一些麻煩。但是,其中一個終端會話在文件被刪除之前正在執行腳本,並且它繼續正常工作。

有沒有辦法劫持目前正在執行腳本的終端會話來恢復這個文件的內容?

使用查找腳本的 pidps

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!

祝你好運!

引用自:https://serverfault.com/questions/863204