วิธีการ 'ls' โฟลเดอร์ระยะไกลได้อย่างไร


10

อันนี้ใช้แซมบ้า:

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

ฉันพยายามที่จะทำอย่างใดโดย;

  1. เรียกดูไดเรกทอรีระยะไกล ( pcmanfm 0.9.9 )
  2. การเปิดโฟลเดอร์ปัจจุบันในเทอร์มินัล
  3. กำลังดำเนินการpwdเพื่อรับ/home/myuser/.gvfs/wdtvlivehub on 192.168.5.4
  4. การทำเช่นls /home/myuser/.gvfs/wdtvlivehub on 192.168.5.4ทำงาน

.. อะไรจะเป็นวิธีที่สง่างามกว่านี้?


การติดตั้งระบบไฟล์ระยะไกลเป็นทางเลือกหรือไม่?
beatgammit

ใช่มันสามารถ
octosquidopus

คำตอบ:


5

วิธีการใช้งานปัจจุบันของคุณ~/.gvfs/นั้นใช้ได้ แต่คุณไม่จำเป็นต้องใช้ pcmanfm ในการทำเช่นนั้นคุณสามารถใช้gvfs-mount เพื่อเชื่อมต่อกับการแชร์ นอกจากนี้เครื่องมือเช่นgvfs-lsและgvfs-cpจะยอมรับsmb: // URI ของคุณ

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

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

ในเวอร์ชัน gvfs ล่าสุดตำแหน่งคือ$XDG_RUNTIME_DIR/gvfs/(aka /run/user/$UID/gvfs/) และชื่อไดเรกทอรีย่อยสามารถอ่านได้ด้วยเครื่องมากขึ้น:

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

ในรุ่นเก่ากว่า:

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

(อย่าลืมอ้างอิงช่องว่างภายในชื่อพา ธ )


โดยเฉพาะสำหรับแซมบ้า, คุณสามารถใช้โปรแกรมหรือติดหุ้นในวันที่ชั้นวีเอฟเอโดยใช้smbclient mount -t cifs(น่าเสียดายที่ จำกัด เฉพาะการรูท)

$ smbclient //host/share

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

(สำหรับระบบไฟล์ชนิดอื่นเช่น SFTP และ FTP sshfsและcurlftpfsมีอยู่ตามลำดับ)


ฉันพูดถึง pcmanfm เพราะนั่นอาจเป็นวิธีที่ฉันจะไปที่โฟลเดอร์ก่อนที่จะดำเนินการกับสคริปต์ gv-ls ดูเหมือนจะเป็นสิ่งที่ฉันกำลังมองหา ดูเหมือนว่ามันจะสามารถแทนที่lsไดเรกทอรีในเครื่องเพื่อความสอดคล้อง
octosquidopus

เป็นค่าที่ชี้แจงว่า "gvfs-ls smb: // host / share /" ทำงานตามที่อธิบายโดยไม่จำเป็นต้องเมานต์ไดรฟ์โดยใช้ gvfs-mount ก่อน กล่าวอีกนัยหนึ่งคำสั่งในบล็อกโค้ดแรกไม่จำเป็นต้องใช้เพื่อให้ได้ผลลัพธ์ตามที่คุณต้องการ
John T

@JohnT: ต้องเป็นเรื่องบังเอิญ The specified location is not mountedฉันมักจะได้รับ
user1686

@grawity - ฉันมักจะเรียกดูตำแหน่งใน Nautilus หรือวิธีที่คล้ายกันและรับรองความถูกต้องแล้วซึ่งอาจมีบางอย่างเกี่ยวข้องกับมัน
John T

@JohnT: ใช่ Nautilus ใช้ GVFS เดียวกันและ GTK จะเมานต์ตำแหน่ง gvfs ที่คุณพยายามเข้าถึงโดยอัตโนมัติ หากการแชร์ปรากฏขึ้นในบานหน้าต่างด้านข้างของ Nautilus แสดงว่าการติดตั้งนั้นอยู่ในขณะนี้
user1686

12

คุณสามารถใช้คำสั่งsmbclientเช่น:

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

4
เยี่ยมมาก แต่ฉันจะได้ผลลัพธ์เดียวกันกับปกติls(ไม่มีคอลัมน์หรือการจัดรูปแบบเพียงรายการของไฟล์) ได้อย่างไร เป็นสิ่งสำคัญเนื่องจากฉันต้องการไพพ์เอาต์พุตไปยังคำสั่งอื่น
octosquidopus
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.