[英]redirection and vim
我想知道是否有一種方法可以直接在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(來自Ubuntu中的moreutils
包)。
例如:
查找-name'* .png'| vipe | xargs rm
將允許您先(在vim中)編輯找到的.png文件列表,然后再將其傳遞給xargs rm
。
jst使用gvimdiff代替
或vimdiff
將命令的輸出直接粘貼到vim中,例如ls,請嘗試
:%r!ls
順便說一句,有一個DirDiff插件 。
你可以用
diff -r dir1/ dir2/ | gvim -
vim(或gvim)的' -
'選項告訴vim打開STDIN
我經常使用vimdiff -g <file1> <file2>
最簡單便捷的方法之一就是這樣做:
vimdiff -R <file1> <file2>
同樣,'-R'標志是將其打開為只讀模式,以避免任何意外更改。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.