2012-04-05 49 views
3

那麼,我需要做的實際上是CTRL - Z一個從插入模式開始的進程GVim如何在Gvim中的後臺運行進程?

我的命令:Cdprun執行cdprun.sh它運行一個sudo-ed守護進程。我可以在sudo-ed守護進程調用的末尾添加&以在後臺運行,並且可以正常工作,但用戶不會收到提示輸入密碼的提示。相反,我想只是CTRL - Z在它之外,但鍵盤中斷不起作用。有任何想法嗎?謝謝。

+0

爲什麼你需要一個鍵盤中斷?在守護進程運行時中止守護進程或返回Gvim? – romainl 2012-04-05 19:20:42

回答

2

在這種情況下,您通常有兩種選擇:泛型使用類似vim-addon-async提到的@Nicalas Martin或帶內置解釋器的vim支持:tcl with expect模塊,python with pyexpect,perl with Expect ,也許別的東西(注意:所有提到的軟件包都沒有附帶tcl/python/perl)。其次是針對目前的情況:它是在其他地方背景。從你的解釋我猜你有一個看起來像腳本

#!/bin/sh 
<...> 
sudo run-daemon --daemon-args # Last executed line 

,我說得對嗎?比你可以把backgrounding在另一個地方:不

sudo run-daemon --daemon-args & 

,但

sudo sh -c "nohup run-daemon --daemon-args &"