วิธีการยกเว้นไดเรกทอรีบางอย่างในขณะที่ใช้ wget


12

ฉันต้องการดาวน์โหลดไดเรกทอรีจาก FTP ซึ่งมีซอร์สโค้ดบางตัว เริ่มแรกฉันทำสิ่งนี้:

wget -r ftp://path/to/src

น่าเสียดายที่ตัวไดเรกทอรีเองนั้นเป็นผลมาจากการชำระเงินแบบ SVN ดังนั้นจึงมีไดเรกทอรี. svn จำนวนมากและการรวบรวมข้อมูลมากกว่านั้นจะใช้เวลานานกว่า เป็นไปได้ไหมที่จะไม่รวมไดเรกทอรี. svn เหล่านั้น

คำตอบ:


18
wget -X directory_to_exclude[,other_directory_to_exclude] -r ftp://URL_ftp_server

SERVER
    |-logs
    |-etc
    |-cache
    |-public_html
      |-images
      |-videos ( want to exclude )
      |-files
      |-audio  (want to exclude)

wget -X /public_html/videos,/public_html/audio ftp:SERVER/public_html/*

1
นี่ดูเหมือนจะเป็นความคิดเห็นที่ถูกต้องจริงๆ สวิตช์แยกไดเรกทอรีไม่ได้ทำรูปแบบ / regexes ดังนั้นคุณต้องรวมเส้นทางทั้งหมด (จากราก) คำตอบที่ได้รับการโหวตสูงกว่าดูเหมือนจะไม่ถูกต้องสำหรับทุกคนยกเว้นกรณีเล็ก ๆ น้อย ๆ
John O

1
ฉันเห็นด้วย. แม้ว่าเอกสารจะระบุว่าสามารถใช้ wildcard ได้ แต่ฉันไม่สามารถใช้งานได้
Diomidis Spinellis

2
สัญลักษณ์ตัวแทนทำงานได้ แต่ถูกตีความก่อนในระดับเชลล์ดังนั้นคุณต้องหลีกเลี่ยงพวกมันให้ทำงาน
Joop Kiefte

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