2013-07-17
vimのnetrwでssh接続を行う
vimは高機能なのでデフォルトで、ssh接続を行う機能を持ってる。
(正確に言えば、内部でsftpだとかscp接続のコマンドを読んでるだけであるが。)
なので、サーバ上のファイルをローカルのvimで直接編集したりすることが可能である。
使えるプロトコルを列挙しておくと、
- dav
- fetch
- ftp
- http
- rcp
- rsync
- scp
- sftp
である。
接続の機能を担ってるのはnetrwなる標準のプラグインである。
netrwはこの機能のためにあるのではなく、vimでディレクトリを開いた時に表示される画面などディレクトリのブラジング機能を提供している。
ftpとscpを例に使い方を見る。サーバの状態は以下のようになってるとする。
server:host.co.jp
user:hoge
pass:passhoge
port:22
ftp
ftpでサーバに接続する場合は次のようにする。
上のコマンドで、サーバのホームディレクトリがvimで開かれる。
後は通常のvimでのブラウジングと同じように利用すれば良い。
ftpに対するパスワードを設定している場合は、一度だけパスワードが聞かれるが、以降は.netrcに記録されるためパス入力は求められない。
この設定されたパスを変更したい場合は
:call NetUserPass("hoge","passhoge")
としてやれば良い。
scp
scpでの接続のやり方はftpの場合と殆ど同じで次のようにする。
上のコマンドで、サーバのホームディレクトリがvimで開かれる。
sshを使った接続の場合は、やっかいなのはパスワード入力である。
ftpのようなパスワード入力を省略する仕組みがないため、ディレクトリの移動やファイルを開く度にパスワードを入力する必要がある。
この問題を解消するには、パスワード式をやめて公開鍵方式での通信をやるしかない。
詳しくは、以下を参照。
Vim documentation: pi_netrw
参考
Vim documentation: pi_netrw
windows(gvim)で使いたい場合は
vimからSSH/SCP接続してみる - Nukino’s memorandum
- 286 https://www.google.co.jp/
- 88 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&ved=0CDYQFjAB&url=http://d.hatena.ne.jp/adragoona/20121019/1350633615&ei=-jfnUeKMFcGHlAX26oGoDg&usg=AFQjCNFSGX1ooKdcGDDjEbr8kmUYcOFE_g&sig2=S7wfBbvlFqq9ictzwsQf-g&bvm=bv.49478099
- 50 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=1&ved=0CC0QFjAA&url=http://d.hatena.ne.jp/adragoona/20130314/1363235280&ei=FTvnUebzMsuFlAWgrYGYCw&usg=AFQjCNE3uNhzTnvtTs4V1UDAw_kGm2Dtqw&sig2=QmOUcg60qM97BIS0xMDYzQ&bvm=bv.49478099
- 26 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=3&ved=0CDkQFjAC&url=http://d.hatena.ne.jp/adragoona/20121019/1350633615&ei=0LbmUanMCsi7kQXchoCYCw&usg=AFQjCNFSGX1ooKdcGDDjEbr8kmUYcOFE_g&bvm=bv.49405654,d.dGI
- 15 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&frm=1&source=web&cd=2&ved=0CDAQFjAB&url=http://d.hatena.ne.jp/adragoona/20121019/1350633615&ei=JETnUdCEHcGMkwWfjIHgBA&usg=AFQjCNFSGX1ooKdcGDDjEbr8kmUYcOFE_g&bvm=bv.49478099,d.dGI
- 15 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=4&ved=0CEQQFjAD&url=http://d.hatena.ne.jp/adragoona/20121106/1352201673&ei=BRXoUdvPLMvPkgWp-4CAAQ&usg=AFQjCNEsAvVPI_smsqXDoxyaH6vQ-uYw_A&sig2=T7dqRUFRY3NqKdH9YcDo3g&bvm=bv.49478099
- 13 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=5&ved=0CFAQFjAE&url=http://d.hatena.ne.jp/adragoona/20121106/1352201673&ei=02DnUev_FMrylAX1tICIDQ&usg=AFQjCNEsAvVPI_smsqXDoxyaH6vQ-uYw_A&sig2=1HMnjVtjC3UMY9O-kop15A&bvm=bv.49478099
- 13 http://www.google.co.jp/url?sa=t&rct=j&q=teraterm ssh転送&source=web&cd=2&ved=0CDIQFjAB&url=http://d.hatena.ne.jp/adragoona/20121019/1350633615&ei=v4znUZedHILJkwWe94DwCA&usg=AFQjCNFSGX1ooKdcGDDjEbr8kmUYcOFE_g
- 10 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=6&ved=0CFIQFjAF&url=http://d.hatena.ne.jp/adragoona/20121215/1355585428&ei=XdHmUdrIM4iskgXMkoFo&usg=AFQjCNGQF6SGLPDcMXuRYYKnkSegz3gQYQ&bvm=bv.49405654,d.dGI
- 10 http://www.google.co.jp/url?sa=t&rct=j&q=&esrc=s&source=web&cd=8&ved=0CGEQFjAH&url=http://d.hatena.ne.jp/adragoona/20130421/1366560206&ei=Dp_mUfH9KK2Xigek3oDQCg&usg=AFQjCNH11QfoUStWrMZv4loGhRemHDtD-g&bvm=bv.49405654,d.aGc