我知道对于任何高级Vim程序员来说这都是一件容易的事,但我现在一直试图找到一个解决方案几个小时。
在我的结果文件中,有一些行如:
/Users/name/Project/Task1/folder1 : INFO : Random Info message
这里,/Users/name/Project/Task1/folder1
是我的pwd
,即现在的工作目录。
我想用“ USER ”替换文件中上面的所有pwd。我怎么能这样做?
答案 0 :(得分:1)
如果我理解正确,您只需使用search and replace functionality并转义/
这样的字符:
:%s/\/Users\/name\/Project\/Task1\/folder1/USER/
如果您需要替换多个当前工作目录(因此希望pwd
是动态的),可能更容易使用sed
之类的东西:
sed "s~$(pwd)~USER~" < file
请注意,~
用作命令的分隔符而不是/
,这样我们就不需要转义路径中的/
。
答案 1 :(得分:1)
:%s@/Users/name/Project/Task1/folder1@USER@g
或
:%s@<C-r>=getcwd()<CR>@USER@g