Vimを使用してインターネットでファイルを編集するにはどうすればよいですか?

Vimを使用してインターネットでファイルを編集するにはどうすればよいですか?

現在、私はSSHを介してサーバーに接続し、サーバーでVimを実行してこれを行います。これの利点は、SCPを介してリモートサーバーでファイルを開く面倒な構文を処理する必要がなく、さらに重要なことは、サーバー上のファイルシステムを非常にすばやく移動できることです。一方、遅延があり、編集が少し難しいです。

複数のリモートファイルを編集する標準的な方法は何ですか?

答え1

あなたはそれを使用することができますSSHFSリモートホームディレクトリをローカルフォルダにマウントします。ローカルvim現在のインフラストラクチャを使用し、待ち時間が短いという利点があります。

答え2

リモート編集にはローカルvimまたはgvimを使用できます。

:e scp://[email protected]/~/myfiles/whatever.file

scpセキュリティコピー契約。同じ方法で認証されるため、sshSSH キーを使用できる必要があります。他のさまざまなプロトコルがサポートされていますが(参考文献を参照:help netrw-externapp)、すでに同じ場所でsshを使用している場合は、scpが最も簡単になります。

この方法でディレクトリを参照できます。パスが.で終わっていることを確認してください/。それ以外の場合、vimはそのディレクトリを新しいファイルに変換します。

:wscpを介して自動的にファイルを書き込みます。何らかの理由で書き込みが失敗すると、ステータスバーに「シェルリターン1」などの内容が表示されるので注意が必要です。ただし、次の点に注意してください。いいえvimはこれが結果を引き起こす可能性があることを知りません。たとえば、今すぐ終了しても警告は表示されません。特に:waたくさん使うとこれを見逃しやすいです。 ;|これが唯一の警告です。

公式文書を参照してください:help netrw

答え3

私はrsyncを使用します。変更された内容のみを送信します。このように:

rsync -e ssh -va remoteuser@remotehost:remotedir .

その後、必要に応じてファイルをローカルで編集できます。遅延はありません。送信する前にすべてのファイルを確認できます。

rsync -e ssh -va . remoteuser@remotehost:remotedir

まず、ローカルディレクトリを作成し、cdそのディレクトリに移動するとします。ファイルの削除を処理することもできますが、間違ったディレクトリで実行すると、ディレクトリツリー全体が破損する可能性があるため、非常に注意する必要があります。

rsync -e ssh -va --delete . remoteuser@remotehost:remotedir

私がしたことは、最初に次のように "n"フラグを使用して "乾燥モード"で実行したことです。

rsync -e ssh -van --delete . remoteuser@remotehost:remotedir

それが本当ならどうなるかを報告します。報告されたリストが満足のいくものであれば、もう一度実行して「n」フラグを削除してください。

rsyncは非常に効率的です。他にも様々な表示があります。これは非常に複雑です。

答え4

最も適切な方法(SSH方式)を指定することもできますが、まだ編集中のファイルの性質に応じてセキュリティポリシーで許可されている場合は、小さなパーティションを割り当てて共有し、そこにファイルを配置できます。この提案では、おそらくNFSまたはSambaを使用するのが最も簡単です。しかし、テストファイルの編集は依然としてUNIXの一般的な概念であるため、現在の方法を維持する必要があります。

関連情報