wget เป็นคำสั่งที่ใช้ในการดาวน์โหลดไฟล์ที่นิยมใช้กันบน Linux ซึ่งปกติเราก็จะใช้ในการดาวน์โหลดไฟล์ซอสโค้ดหรือไฟล์โปรแกรมต่างๆ แต่ว่า wget ไม่ได้มีความสามารถแค่นั้น เรายังสามารถสั่งให้โหลดเฉพาะไฟล์ .pdf หรือไฟล์นามสกุลอื่นๆ จากทั้งเว็บไซต์มาเก็บไว้ที่เครื่องเราได้ หรือจะทำสำเนาทั้งเว็บไซต์ลงมาเก็บไว้เลยก็ยังได้ เดียวใช้งานยังไงมาดูกัน
1. อันนี้พื้นฐาน สั่งดาวน์โหลดไฟล์แค่ไฟล์เดียว ใช้คำสั่ง wget แล้วตามด้วย URL ของไฟล์ที่ต้องการ
1 | $ wget http://www.linuxmint.com/documentation/user-guide/Cinnamon/english_17.0.pdf |
2. หากต้องการเปลี่ยนชื่อไฟล์ด้วยหละก็ให้เพิ่มออปชั่น -O เข้าไป
1 | $ wget -O Cinnamon.pdf http://www.linuxmint.com/documentation/user-guide/Cinnamon/english_17.0.pdf |
3. จำกัดความเร็วของการดาวน์โหลดด้วยออปชั่น –-limit-rate
1 | $ wget --limit-rate=200k http://www.linuxmint.com/documentation/user-guide/Cinnamon/english_17.0.pdf |
4. ถ้าหากว่าโหลดไฟล์ไม่เสร็จเครื่องหยุดทำงานไปก่อน ให้เพิ่ม -c เพื่อสั่งให้โหลดต่อจากของเดิม
1 | $ wget -c -O Cinnamon.pdf http://www.linuxmint.com/documentation/user-guide/Cinnamon/english_17.0.pdf |
5. สั่งให้โหลดเป็นแบ็คกราวโพรเซส โดยเพิ่มออปชั่น -b โดยตัว wget จะสร้างล็อกไฟล์ชื่อ wget-log ขึ้นมา เราสามารถดูว่าโหลดถึงไหนแล้วได้จากล็อกไฟล์นี้
1 | $ wget -b http://www.linuxmint.com/documentation/user-guide/Cinnamon/english_17.0.pdf |
ดูล็อกไฟล์ว่าดาวน์โหลดถึงไหนแล้ว
1 | $ tail -f wget-log |
6. สำหรับบางเว็บไซต์ถูกจำกัดว่าจะต้องโหลดจากบราวเซอร์บางตัวเท่านั้น ให้เพิ่มออปชั่น –-user-agent เพื่อกำหนดให้เป็นบราวเซอร์ที่ต้องการ
1 | $ wget --user-agent="Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/39.0.2171.71 Safari/537.36" http://www.linuxmint.com/documentation/user-guide/Cinnamon/english_17.0.pdf |
7. คราวนี้มาลองโหลดทีละหลายๆไฟล์บ้าง ให้ทำการใส่ชื่อ URL ที่ต้องการดาวน์โหลดไว้ในเท็กไฟล์ ในตัวอย่างผมตั้งชื่อว่า download-list.txt
download-list.txt
1 2 3 4 | http://www.linuxmint.com/documentation/user-guide/Cinnamon/english_17.0.pdf http://www.linuxmint.com/documentation/user-guide/Cinnamon/chinese_16.0.pdf http://www.linuxmint.com/documentation/user-guide/Cinnamon/dutch_17.0.pdf http://www.linuxmint.com/documentation/user-guide/Cinnamon/german_17.0.pdf |
จากนั้นสั่งดาวโหลดทีละหลายๆไฟล์โดยเพิ่มออปชั่น -i แล้วตามดวยชื่อเท็กไฟล์ที่เราได้สร้างเตรียมไว้
1 | $ wget -i download-list.txt |
8. ต่อไปมาลองดาวน์โหลดเว็บไซต์ทั้งเว็บมาเก็บไว้ดูในเครื่องกันบ้าง โดยใช้ออปชั่น –-mirror และ ./www-local คือไดเร็กทอรี่ที่ต้องการให้เก็บข้อมูล
1 | $ wget --mirror -p --convert-links -P ./www-local http://www.lookhin.com |
9. คราวนี้ถ้าเราอยากได้แค่ไฟล์ที่มีนามสกุล .pdf จากเว็บไซต์ทั้งเว็บ เราก็ใช้คำสั่ง -r –-no-parent -A และตามด้วยนามสกุลของไฟล์ที่ต้องการ
1 | $ wget -r --no-parent -A.pdf http://www.linuxmint.com/documentation/user-guide/ |
10. หากต้องการดาวน์โหลดไฟล์จาก FTP ก็สามารถทำได้เช่นกัน
1 | $ wget --ftp-user=USERNAME --ftp-password=PASSWORD ftp://ftp.yourdomain.com/document/linux.pdf |