如何让vim在不冻结屏幕的情况下运行shell命令

时间:2011-03-09 14:59:40

标签: vim

我最近切换到使用VIM(特别是Mac Vim),我想知道是否可以运行调用shell(:!X)的各种命令,使得它们不会冻结VIM并阻止你在运行(有时是慢速)任务时工作。有没有办法做到这一点?

2 个答案:

答案 0 :(得分:3)

如果您在结尾处使用&符执行任务'&'任务将在后台执行,您将立即得到提示。

例如:

:! find /home -name "*.jpg" > /tmp/results.txt &

将搜索结果保留在/tmp/results.txt中,但您将立即获得控件。

希望它有所帮助。

问候!

答案 1 :(得分:1)

您可以将execsilentredraw组合使用,如下所示:

:exec 'silent :!find /home -name "*.jpg" > /tmp/results.txt' | :exec 'redraw!'