2013-06-30 40 views
2

我想用vim搜索並替換文件夾中所有php文件中的一些文本。一個難點是這些文件都在ftp站點上。vim:通過ftp替換文件

據我所知,這是可以做到(無FTP)如下:在一個緩衝

首先打開文件:

:args *.php 

然後應用查找/替換過的所有文件緩衝區

:argdo %s/<pattern1>/<pattern2>/ge | update 

但是,我不知道如何使用FTP vim的插件加載一個目錄中的所有文件。我試過了:

:args ftp://[email protected]/dir/*.php 

但是這只是'打開'一個新的文件,在指定的ftp位置上調用* .php。有任何想法嗎?

如果有人知道另一個例如通過在Linux上使用sed over ftp,這也可以。

+0

所有的文件都在同一個文件夾中,還是出現在子目錄中呢? – d11wtq

+0

在同一個文件夾中。您的解決方案如下,謝謝! – planck

回答

1

打開使用NETRW包含文件的目錄:

:e ftp://[email protected]/dir/<CR> 

注意尾部的斜槓是很重要的。

現在選擇你感興趣的文件,使用水珠:

mr 
*.php<CR> 

這標誌着所有匹配模式的文件。現在,您可以用argdo將它們添加到arglist中和對他們的工作:

me 

<F1>而在NETRW目錄列表與可用的命令幫助。

0

Netrw和其他所有編輯器的FTP插件一樣,將遠程文件下載到本地計算機上的臨時位置進行編輯,並在保存時將其上傳。

如果您對netrw不滿意,您可以簡單地使用FTP客戶端將該目錄下載到您的機器上,在本地執行g/re/p並在完成後重新上傳。