web-dev-qa-db-ja.com

ターミナルセッションから実行中のスクリプトを回復する

したがって、私は GNU Screen を使用して、実行中の複数のスクリプト/プログラムを管理しています。多重化と分離可能性は非常に役立ちます。

ディスクからスクリプトを削除しましたが、バックアップを見つけるのに問題があります。ただし、ファイルが削除される前にターミナルセッションの1つがスクリプトを実行していたため、引き続き問題なく動作しました。

このファイルの内容を回復するために現在スクリプトを実行しているターミナルセッションをハイジャックする方法はありますか?

35
Fdo

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/;スクリプトファイルへのリンクが壊れているはずですが、catshould動作します(スクリプトの実行中に!):

cat /proc/8983/fd/255 
#!/bin/bash
# script contents!

幸運を!

61
mrc