如何在Gvim内部的后台运行进程?

时间:2012-04-05 18:25:52

标签: bash shell vim

嗯,我需要做的是 CTRL - Z GVim中的插入模式开始的进程中。

我的命令:Cdprun执行运行sudo-ed守护程序的cdprun.sh。我可以在sudo-ed守护程序调用结束时添加&以在后台运行并且可以正常工作,但不会提示用户输入密码。相反,我想只是 CTRL - Z ,但键盘中断不起作用。有任何想法吗? THX。

2 个答案:

答案 0 :(得分:2)

在这种情况下,你通常有两种选择:泛型使用像@Nicalas Martin提到的vim-addon-async或内置解释器支持的vim:tcl with expect module,python with pyexpect,perl with Expect,maybe别的东西(注意:所有提到的包都不附带tcl / python / perl)。其次是针对当前情况:它是在另一个地方的背景。根据你的解释,我猜你有一个看起来像

的脚本
#!/bin/sh
<...>
sudo run-daemon --daemon-args # Last executed line
是的,对吗?比你可以把背景放在另一个地方:不是

sudo run-daemon --daemon-args &

,但是

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

答案 1 :(得分:0)

这是一个在vim中处理异步命令的脚本。不是一个完美的解决方案,但可能是一个很好的临时解http://www.vim.org/scripts/script.php?script_id=3307