CLI: ดาวน์โหลดไฟล์ขนาดเล็กจำนวนมากได้อย่างรวดเร็วผ่านทาง ftp


1

ฉันกำลังดาวน์โหลดไฟล์ขนาดเล็กจำนวนมาก (มากกว่า 800 ต่อไฟล์ประมาณ 5k) ฉันทำสิ่งนี้ด้วยคำสั่ง mget ของ lftp แต่มันค่อนข้างช้า แต่ละไฟล์ใช้เวลาประมาณ 1 วินาที มีเครื่องมือ / วิธีเพิ่มความเร็วหรือไม่

ขอบคุณสำหรับการตอบกลับทั้งหมด แต่ฉันมีสิทธิ์เข้าถึง ftp ไปยังเซิร์ฟเวอร์นี้


หากช้าเนื่องจากจำนวนไฟล์: tar / zip และดาวน์โหลดในครั้งเดียวหรือใช้สตรีม (เช่น tar piped แม้ว่า netcat ไปยัง untar)
Hennes

@Hennes: คุณสามารถ tar บนเซิร์ฟเวอร์ ftp ได้หรือไม่ คุณจะดาวน์โหลด ftp ผ่าน netcat ได้อย่างไร?
lang2

คุณสามารถเข้าสู่เซิร์ฟเวอร์ที่ใช้งาน FTP ได้หรือไม่? หากคุณสามารถลองสิ่งนี้ได้: บนโฮสต์ที่รับ: nc -l 7654 | tar xบนเซิร์ฟเวอร์ซึ่งรัน ftp ด้วย: tar cf - | nc -p receiving_host 7654. ใจคุณที่ไม่ได้ ผ่าน FTP แต่ FTP ต้องการตาย มันคือ เก่า และควรถูกแทนที่ด้วยเมื่อหลายสิบปีก่อน
Hennes

คำตอบ:


1

หากคุณมีการเข้าถึงบรรทัดคำสั่งไปยังเซิร์ฟเวอร์ให้เข้าสู่ระบบและมัดพวกเขาเป็นไฟล์เดียวกับ zip, gzip, bzip หรือ tar (แล้วแต่จำนวนใดที่พร้อมใช้งานและสามารถย้อนกลับไปยังปลายทางได้ . วิธีนี้จะลดจำนวนไฟล์ _and _ จำนวนไบต์ทั้งหมดที่จะถ่ายโอน

หากคุณมีสิทธิ์เข้าถึง FTP ไปยังเซิร์ฟเวอร์เท่านั้น: เซิร์ฟเวอร์บางตัวได้รับการกำหนดค่าให้ส่งไฟล์เก็บถาวร zip / gzip (ซึ่งพวกเขาสร้างขึ้นเอง) หากคุณต้องการ เช่นหากไฟล์ของคุณอยู่ ftp://example.com/some/folder/ลองดึงข้อมูล ftp://example.com/some/folder.zip. มันอาจจะไม่ได้ผล


สิ่งนี้เกี่ยวกับเซิร์ฟเวอร์ที่บีบอัดโฟลเดอร์โดยอัตโนมัติเป็นความคิดที่ดี แต่มันเกิดขึ้นจริงหรือ คุณสามารถให้ตัวอย่างของเซิร์ฟเวอร์ที่ทำสิ่งนี้ได้หรือไม่?
foobarbecue
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.