Bagaimana cara `ls` folder jauh?


10

Yang ini menggunakan Samba:

 $ ls smb://192.168.5.4/wdtvlivehub/abc
 ls: cannot access smb://192.168.5.4/wdtvlivehub/abc: No such file or directory

Saya entah bagaimana berhasil melakukannya dengan;

  1. Menjelajah ke direktori jarak jauh. ( pcmanfm 0.9.9 )
  2. Membuka folder saat ini di terminal.
  3. Eksekusi pwduntuk mendapatkan/home/myuser/.gvfs/wdtvlivehub on 192.168.5.4
  4. Melakukan ls /home/myuser/.gvfs/wdtvlivehub on 192.168.5.4pekerjaan.

..Apa yang akan menjadi cara yang lebih elegan?


Apakah memasang sistem file jarak jauh merupakan opsi?
— beatgammit

Ya bisa.
— octosquidopus

Jawaban:


5

Metode penggunaan Anda saat ~/.gvfs/ini baik-baik saja, tetapi Anda tidak perlu pcmanfm untuk itu - Anda dapat menggunakan gvfs-mount untuk terhubung ke share. Selain itu, alat seperti gvfs-lsdan gvfs-cpakan menerima seseorang: // URI.

$ gvfs-mount smb://HOST/SHARE/

$ gvfs-ls smb://HOST/SHARE/

Dalam versi gvfs terbaru lokasinya adalah $XDG_RUNTIME_DIR/gvfs/(alias /run/user/$UID/gvfs/), dan nama subdirektori menjadi lebih dapat dibaca mesin:

$ ls /run/user/$UID/gvfs/smb-share:server=HOST,share=SHARE/

Dalam versi yang lebih lama:

$ ls ~/.gvfs/"SHARE on HOST"/

(Ingatlah untuk mengutip spasi di dalam nama jalur.)


Khusus untuk Samba, Anda dapat menggunakan smbclientprogram, atau me-mount share pada layer VFS dengan menggunakan mount -t cifs. (Yang terakhir, sayangnya, terbatas pada root.)

$ smbclient //host/share

# mount -t cifs //host/share /mnt

(Untuk jenis sistem file lain, seperti SFTP dan FTP, sshfsdan curlftpfsada masing-masing.)


Saya menyebutkan pcmanfm karena itu kemungkinan besar cara saya akan membuka folder sebelum menjalankannya dengan skrip. gv-ls tampaknya persis apa yang saya cari. Sepertinya itu bahkan bisa menggantikan lsdirektori lokal demi konsistensi.
— octosquidopus

Perlu diperjelas bahwa "gvfs-ls smb: // host / share /" berfungsi seperti yang dijelaskan tanpa perlu memasang drive menggunakan gvfs-mount terlebih dahulu. Dengan kata lain, perintah dalam blok kode pertama tidak semua harus digunakan untuk mencapai hasil yang Anda inginkan.
— John T

@ JohnT: Pasti kebetulan. Saya biasanya mendapatkan The specified location is not mounted.
— user1686

@ kegembiraan - Saya biasanya sudah melihat-lihat lokasi di Nautilus atau serupa dan dikonfirmasi dengan cara itu, yang mungkin ada hubungannya dengan itu.
— John T

@ JohnT: Ya, Nautilus menggunakan GVFS yang sama, dan GTK secara otomatis me-mount lokasi gvf yang Anda coba akses. Jika bagian itu muncul di panel samping Nautilus, maka itu sudah 'dipasang' sekarang.
— user1686

12

Anda dapat menggunakan perintah smbclient , mis:

smbclient -N //192.168.5.4/wdtvlivehub/abc -c ls

4
Hebat, tapi bagaimana saya bisa mencapai output yang sama seperti biasa ls(tidak ada kolom atau format, hanya daftar file)? Ini penting karena saya ingin menyalurkan output ke perintah lain.
— octosquidopus
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.