2

我想使用 call:Rep(new,old) 将旧字符串替换为新字符串。所以我的伪代码是这样的......

我是 vimscript 的新手,我不知道该怎么做。

function! Rep(old,new)
   !sed -i.bak 's/#{old}/#{new}/g' *
endfunction

你有什么主意吗?谢谢。

4

1 回答 1

3

将您的功能更改为

function! Rep(old,new)
   exe "!sed -i.bak 's/".a:old."/".a:new."/g' *"
endfunction

然后使用:call Rep(old,new). 您也可以为它创建一个命令。

command! -nargs=+ Rep call Rep(<args>)

这样你就可以做到:Rep old new

于 2012-08-05T21:20:25.197 回答