我想知道是否有办法直接在vim中查看任何命令的输出,而不是先将其重定向到文件然后打开该文件.
我需要像$ gvim <这样的东西 diff -r dir1/ dir2/
这会产生不明确的重定向错误消息
我只想在gvim里面看到dir1和dir2之间的差异.
任何人都可以提供一个很好的黑客?
diff file1 file2 | vim -R -
将-R
使得它只读的,因此你不小心修改输入(这可能是也可能不是你想要的行为).单个短划线告诉vim
通过标准输入读取其输入.也适用于其他命令.
此外,当已经在Vim:
:r! diff file1 file2
vim -d file1 file2
虽然我也建议vimdiff
或者vim -d
考虑差异,我只需要分享这个(更一般的)方法来在管道中使用vim:vipe(来自moreutils
Ubuntu中的包).
例如:
find -name'*.png'| vipe | xargs rm
允许你首先编辑(在vim中)传递之前找到的.png文件列表xargs rm
.