Menavigasi menggunakan SSH

10

Saya tahu orang dapat menggunakan vim scp://host/path/to/fileuntuk mengedit file jarak jauh secara lokal kemudian memperbarui mesin jarak jauh saat menyimpan ( :w). Namun saya ingin tahu apakah mungkin untuk menavigasi direktori menggunakan ssh (atau jika ada plugin untuk melakukan itu)

NERDTree tidak mendukungnya, dan ketika membuka folder, meskipun netrw memungkinkan saya untuk menavigasi ke direktori, membuka file tidak berfungsi.

lesurp
sumber

Jawaban:

13

Alih-alih menunjuk Vim / Netrw ke file:

scp://host/path/file

arahkan ke direktori:

scp://host/path/

Ini memberi Anda daftar yang sama dan pintasan yang sama seolah-olah Anda sedang menjelajahi mesin Anda.

romainl
sumber
pernahkah Anda mencoba ini ketika melakukan remoting dari Unixmesin Anda untuk mengakses folder pada mesin Windows .. Saya baru saja mencoba vim scp://[email protected]//C:/Users/user/Desktop/tmp/, dan itu hanya memberi saya layar kosong, dengan kesalahan 'ls' is not recognized as an internal or external commandketika saya mencoba: vim scp://[email protected]//C:/Users/user/Desktop/tmp/filename.. berfungsi dengan baik.
alpha_989
Dari sini tampaknya vimmengeluarkan perintah ls, ketika ia login ke komputer jarak jauh .. dan karena itu komputer windows .. tidak ada ls.. dan perintah gagal. Apakah mungkin vim untuk menelusuri windowsdirektori lebih dari ssh menggunakan netrwplugin atau yang lain? Saya menggunakanVIM 8.1
alpha_989
2
Harap dicatat bahwa trailing slash after scp://host//path/diperlukan agar ini berfungsi; jika tidak, vim akan mencoba membuka path sebagai file biasa, yang akan memuat kosong.
koyae
1

Ups lupa saya membuka pertanyaan ini!

Jadi masalahnya adalah, dengan versi netrw yang saya miliki (dikemas dengan vim-gnome di Debian Jessie), memodifikasi file dari penjelajah (melalui ssh) tidak akan menggunakan URI yang benar (dari memori, '@' di ' user @ host 'tidak ada). Itu membuka file kosong (karena tidak menemukan apa-apa) tetapi masih menyimpan file baru menggunakan URI yang baik (secara efektif menimpa file asli).

Jawaban @ user21497 juga membantu saya karena saya tidak pernah menemukan pintasan 'file baru', yang cukup berguna karena menggunakan ': e' membuat file secara lokal.

Akhirnya, pertanyaan ini membantu saya menavigasi lebih baik menggunakan netrw (kembali ke explorer setelah membuka file menggunakan: Ex)

Terima kasih atas bantuannya kalian!

lesurp
sumber
0

Saya tidak yakin apa yang Anda maksud dengan "beri tahu file baru"; jika Anda ingin membuat file baru, saat menjelajah melalui scp: // hostname / direktori, cukup tekan "%" seperti ketika ketika Anda berada di direktori lokal untuk membuat file baru. Lihat: membantu netrw-%. Anda dapat membuat direktori menggunakan d (: help netrw-d). Jika Anda ingin memodifikasi file yang sudah ada, pilih dengan kursor Anda di atas nama file di layar netrw dan tekan <cr>(ada metode pemilihan lain juga, termasuk v, o, t, dll). Lihat: membantu netrw-quickmap untuk ikhtisar tentang ini. Saya baru saja mencoba ini dan tidak mendapatkan file kosong (ketika sudah ada sebelumnya). File baru, tentu saja, akan kosong.

pengguna21497
sumber