วิธีการดาวน์โหลดไฟล์เฉพาะจากบางเส้นทางด้วย wget


22

หากฉันไม่ต้องการดาวน์โหลดไฟล์ที่พบในพา ธ URL เฉพาะด้วยตนเองฉันจะมีตัวเลือกอะไรบ้าง การใช้ไวลด์การ์ดล้มเหลว:

$ wget 'http://www.shinken-monitoring.org/pub/debian/*deb'
Warning: wildcards not supported in HTTP.
....

แน่นอนว่าฉันไม่รู้จักชื่อไฟล์ล่วงหน้า

คำตอบ:


23

ลองสิ่งนี้:

wget -r -l1 --no-parent -A ".deb" http://www.shinken-monitoring.org/pub/debian/

-rเรียกซ้ำ
-l1ไปที่ความลึกสูงสุด 1
--no-parentละเว้นลิงก์ไปยังไดเรกทอรีที่สูงกว่า
-A "*.deb"รูปแบบของคุณ


แม้ว่ามันจะเป็นจริงในกรณีนี้ แต่จะถือว่าเว็บเซิร์ฟเวอร์ส่งคืนหน้าเว็บที่ URL ที่แสดงรายการไฟล์ทั้งหมด ถ้ามันคืนค่าหน้าดัชนีโดยไม่มีไฟล์ใด ๆ ที่กล่าวถึง wget สามารถรับได้อย่างน่าอัศจรรย์
EightBitTony

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