macOSで端末を閉じた後、Vimプロセスにどのようにアクセスしますか?

macOSで端末を閉じた後、Vimプロセスにどのようにアクセスしますか?

psコマンドを実行したときに得られる結果は次のとおりです。

$ ps
  PID TTY           TIME CMD
14777 ttys000    0:00.25 -bash
19716 ttys000    0:00.15 vi templates/base.html
 8240 ttys001    0:00.11 -bash
 8284 ttys002    0:00.04 -bash
14832 ttys004    0:00.06 -bash
17504 ttys004    0:00.15 python ./app.py
17505 ttys004    1:05.52 /Users/Utka/virtualenv/bin/python ./app.py
19732 ttys005    0:00.02 /Applications/iTerm.app/Contents/MacOS/iTerm2 --server login -fp MrDifferent
19734 ttys005    0:00.01 -bash

誤ってMacでCmd + Wを押して端末を閉じました。端末を再度開くと、psリストに表示されます。私はこの仕事を続けたいと思います。

私は編集のためにvimプロセスie19716を再度有効にしたいと思います。特定のvimプロセスを再度開くには、どのコマンドを実行する必要がありますか?

答え1

元のディレクトリに戻り、名前のbase.htmlあるファイルを見つけます。ファイルが存在する場合は、実行してファイルの最後の状態を復元.base.html.swpできます。vi -r base.html

$ ls -a | grep base
base.html
.base.html.swp
$ kill 19716 #your vim process
$ vi -r base.html
[ save your changes, quit ]
$ rm -f .base.html.swp

答え2

短い:いいえ、できません。

long:実際、viはそうでなければ実行されないかもしれません。プロセスは直接シェルではありません。実行中の内容を確認し、データをps -efl追跡するために使用できます。PPIDPID

しかしそれは働く前景に切り替えを使用できますfg。これは現在のシェルの子プロセスにのみ適用されます。

あなたはできます調査するプロセスはまたはをgdb使用しdtraceますが、プロセスの制御力を失います。

関連情報