Computer >> คอมพิวเตอร์ >  >> ระบบ >> MAC

วิธีการติดตั้งและใช้งาน wget บน Mac

วิธีการติดตั้งและใช้งาน wget บน Mac

คุณสามารถดาวน์โหลดแหล่งข้อมูลจากเว็บได้หลายวิธี นอกจากเบราว์เซอร์ของคุณแล้ว คุณยังสามารถใช้เครื่องมืออย่างเช่น wget เพื่อดาวน์โหลดแหล่งข้อมูลจากเว็บในขณะที่คุณทำอย่างอื่นได้อีกด้วย ในบทความนี้ เราจะแสดงวิธีดาวน์โหลดและใช้งาน wget บน Mac

wget คืออะไร (และใช้สำหรับอะไร)

สำหรับผู้ที่ไม่รู้ตัว wget เป็นยูทิลิตีบรรทัดคำสั่งแบบโอเพนซอร์สที่ไม่โต้ตอบเพื่อช่วยคุณดาวน์โหลดทรัพยากรจาก URL ที่ระบุ เนื่องจากไม่มีการโต้ตอบ wget สามารถทำงานในพื้นหลังหรือก่อนที่คุณจะเข้าสู่ระบบ

เป็นโครงการโดยทีมงาน GNU และเป็นเรื่องที่ดีถ้าคุณมีการเชื่อมต่ออินเทอร์เน็ตที่ไม่ดี ซึ่งหมายความว่ามีความแข็งแกร่งแม้ในสภาวะที่ไม่เหมาะสม

เมื่อคุณติดตั้ง wget คุณจะเรียกใช้คำสั่งและระบุปลายทางสำหรับไฟล์ของคุณ เราจะแสดงให้คุณเห็นว่าต้องทำอย่างไรต่อไป

วิธีการติดตั้ง wget บน Mac

ก่อนที่คุณจะติดตั้ง wget คุณต้องมีตัวจัดการแพ็คเกจ แม้ว่า wget จะไม่ได้มาพร้อมกับ macOS คุณสามารถดาวน์โหลดและติดตั้งโดยใช้ Homebrew ซึ่งเป็นตัวจัดการแพ็คเกจ Mac ที่ดีที่สุด

1. ดาวน์โหลดและติดตั้ง Homebrew

ในการติดตั้ง Homebrew ก่อนอื่นให้เปิดหน้าต่าง Terminal และรันคำสั่งต่อไปนี้:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

สิ่งนี้ใช้ curl คำสั่งดาวน์โหลดไฟล์ที่มาพร้อมกับการติดตั้ง Ruby ที่ติดตั้งไว้ล่วงหน้าบน macOS

เมื่อคุณกด Enter เพื่อเรียกใช้คำสั่ง โปรแกรมติดตั้งจะให้รายละเอียดที่ชัดเจนเกี่ยวกับสิ่งที่จะเกิดขึ้น

วิธีการติดตั้งและใช้งาน wget บน Mac

หลังจากที่คุณยืนยัน โปรแกรมติดตั้งจะทำงาน

2. ติดตั้ง wget จากบรรทัดคำสั่ง

ต่อไปเราต้องการใช้ Homebrew เพื่อติดตั้ง wget จาก Terminal อีกครั้ง ให้รัน:

brew install wget
วิธีการติดตั้งและใช้งาน wget บน Mac

โปรแกรมติดตั้งจะให้การอัปเดตความคืบหน้าแบบสดแก่คุณ และคุณไม่ต้องดำเนินการใดๆ เลยที่นี่ กระบวนการนี้ตรงไปตรงมาและเป็นไปโดยอัตโนมัติ แม้ว่าหากคุณติดตั้ง Homebrew แล้ว อย่าลืมเรียกใช้ brew update เพื่อรับสำเนาล่าสุดของสูตรทั้งหมดของคุณ

เมื่อคุณเห็นข้อความแจ้งใหม่ภายใน Terminal คุณก็พร้อมที่จะใช้ wget บน Mac เพื่อดาวน์โหลดทรัพยากร

วิธีใช้ wget เพื่อดาวน์โหลดทรัพยากรบนเว็บ

ในการดาวน์โหลดทรัพยากรระยะไกลจาก URL โดยใช้ wget คุณจะต้องใช้โครงสร้างต่อไปนี้:

wget -O path/to/local.copy https://example.com/url/to/download.html

ที่จะบันทึกไฟล์ที่ระบุใน URL ไปยังตำแหน่งที่ระบุในเครื่องของคุณ

วิธีการติดตั้งและใช้งาน wget บน Mac

หากคุณยกเว้น -O “แฟล็ก” ตำแหน่งดาวน์โหลดของคุณจะเป็นไดเร็กทอรีการทำงานปัจจุบัน

วิธีการติดตั้งและใช้งาน wget บน Mac

ตัวอย่างเช่น เราต้องการดาวน์โหลดหน้าเว็บไปยังโฟลเดอร์ Downloads:

wget -O /Users/[your-username]/Downloads/status.html https://www.w3.org/Status.html

แม้ว่าจะทำเช่นเดียวกันโดยไม่มี -O ตั้งค่าสถานะ เราจำเป็นต้องเปลี่ยนไดเร็กทอรี (cd downloads ) ก่อนที่เราจะเรียกใช้ wget:

wget /Users/[your-username]/Downloads/status.html https://www.w3.org/Status.html

คุณจะได้รับรายละเอียดทั้งหมดเกี่ยวกับความคืบหน้าในการดาวน์โหลด แม้ว่า wget จะรวดเร็วเพียงใด ข้อมูลนี้จะคล้ายกับสรุปการดาวน์โหลดมากกว่าการอัปเดตตามเวลาจริง

วิธีการดาวน์โหลด Recursive Directory

ในการดาวน์โหลดโครงสร้างไดเรกทอรีทั้งหมดด้วย wget คุณต้องใช้ -r /--recursive และ -np /--no-parent ธง:

wget -e robots=off -r -np https://www.w3.org/History/19921103-hypertext/hypertext/

ซึ่งจะทำให้ wget ติดตามลิงก์ที่พบในเอกสารภายในไดเร็กทอรีที่ระบุ จากนั้นจะทำการดาวน์โหลดซ้ำของเส้นทาง URL ที่ระบุทั้งหมด

นอกจากนี้ ให้สังเกต -e robots=off สั่งการ. การดำเนินการนี้จะข้ามข้อจำกัดในไฟล์ robots.txt โดยทั่วไป เป็นความคิดที่ดีที่จะปิดการใช้งาน robots.txt เพื่อป้องกันการดาวน์โหลดแบบย่อ

การใช้แฟล็กเพิ่มเติมกับ wget

คุณจะพบว่า wget เป็นเครื่องมือที่ยืดหยุ่น เนื่องจากใช้แฟล็กเพิ่มเติมอื่นๆ จำนวนหนึ่ง นี่เป็นสิ่งที่ดีถ้าคุณมีข้อกำหนดเฉพาะสำหรับการดาวน์โหลดของคุณ

มาดูสองประเด็นที่เรามุ่งเน้นในการควบคุมกระบวนการดาวน์โหลดและการสร้างบันทึก

ควบคุมว่า wget จะดาวน์โหลดทรัพยากรอย่างไร

มีแฟล็กมากมายที่จะช่วยคุณตั้งค่ากระบวนการดาวน์โหลด นี่เป็นเพียงตัวอย่างบางส่วนที่มีประโยชน์มากที่สุด:

  • wget -X /absolute/path/to/directory จะไม่รวมไดเรกทอรีเฉพาะบนเซิร์ฟเวอร์ระยะไกล
  • wget -nH ลบไดเร็กทอรี "ชื่อโฮสต์" กล่าวคือข้ามชื่อโดเมนหลัก ตัวอย่างเช่น wget จะข้าม www.w3.org ในตัวอย่างที่แล้วและเริ่มต้นด้วย History ไดเรกทอรีแทน
  • wget --cut-dirs=# ข้ามจำนวนไดเร็กทอรีที่ระบุลง URL ก่อนเริ่มดาวน์โหลดไฟล์ ตัวอย่างเช่น -nH --cut-dirs=1 จะเปลี่ยนเส้นทางที่ระบุของ “ftp.xemacs.org/pub/xemacs/” เป็น “/xemacs/” อย่างง่าย และลดจำนวนไดเรกทอรีหลักที่ว่างในการดาวน์โหลดในเครื่อง
  • wget -R index.html /wget --reject index.html จะข้ามไฟล์ใดๆ ที่ตรงกับชื่อไฟล์ที่ระบุ ในกรณีนี้ จะไม่รวมไฟล์ดัชนีทั้งหมด เครื่องหมายดอกจัน (*) คือสัญลักษณ์แทน เช่น “*.png” การดำเนินการนี้จะข้ามไฟล์ทั้งหมดที่มีนามสกุล PNG
  • wget -i file ระบุ URL เป้าหมายจากไฟล์อินพุต ไฟล์อินพุตนี้ต้องอยู่ในรูปแบบ HTML หรือคุณจะต้องใช้ --force-html ตั้งค่าสถานะเพื่อแยกวิเคราะห์ HTML
  • wget -nc /wget --no-clobber จะไม่เขียนทับไฟล์ที่มีอยู่แล้วในปลายทาง
  • wget -c /wget --continue จะดาวน์โหลดไฟล์ที่ดาวน์โหลดบางส่วนต่อ
  • wget -t 10 จะพยายามดาวน์โหลดทรัพยากรมากถึง 10 ครั้งก่อนที่จะล้มเหลว

wget ทำได้มากกว่าควบคุมกระบวนการดาวน์โหลด เนื่องจากคุณสามารถสร้างบันทึกเพื่อใช้อ้างอิงในอนาคตได้

ปรับระดับการบันทึก

คุณยังสามารถพิจารณาแฟล็กต่อไปนี้เป็นวิธีบางส่วนในการควบคุมเอาต์พุตที่คุณได้รับเมื่อใช้ wget

  • wget -d เปิดใช้งานการดีบักเอาต์พุต
  • wget -o path/to/log.txt เปิดใช้งานการบันทึกเอาต์พุตไปยังไดเร็กทอรีที่ระบุแทนที่จะแสดงเอาต์พุตมาตรฐานการเข้าสู่ระบบ
  • wget -q ปิดเอาต์พุตของ wget ทั้งหมด รวมถึงข้อความแสดงข้อผิดพลาด
  • wget -v เปิดใช้งานเอาต์พุตแบบละเอียดของ wget อย่างชัดเจน
  • wget --no-verbose ปิดข้อความบันทึก\esแต่แสดงข้อความแสดงข้อผิดพลาด

คุณมักจะต้องการทราบว่าเกิดอะไรขึ้นระหว่างการดาวน์โหลด ดังนั้นคุณจึงไม่สามารถใช้แฟล็กเหล่านี้มากเท่ากับอื่นๆ อย่างไรก็ตาม หากคุณมีไฟล์ดาวน์โหลดจำนวนมากและต้องการแน่ใจว่าสามารถแก้ไขปัญหาใดๆ ได้ การมีบันทึกหรือขาดเอาต์พุตเป็นแนวทางที่ถูกต้อง

บทสรุป

แม้ว่าคุณสามารถใช้เบราว์เซอร์หรือ GUI อื่นเพื่อดาวน์โหลดหน้าเว็บและทรัพยากรอื่นๆ ได้ แต่คุณสามารถประหยัดเวลาได้ด้วยบรรทัดคำสั่ง เครื่องมือเช่น wget นั้นทรงพลัง – มากกว่าเบราว์เซอร์ของคุณ – และว่องไวเช่นกัน สำหรับคำอธิบายแบบเต็มของความสามารถของ wget คุณสามารถดูหน้าคู่มือ GNU ของ wget ได้

หากคุณพบว่า wget ใช้งานไม่ได้ อาจถึงเวลาวินิจฉัยปัญหากับการเชื่อมต่อ Wi-Fi ของคุณ คุณจะใช้ wget บน Mac เพื่อดาวน์โหลดแหล่งข้อมูลบนเว็บหรือไม่ แบ่งปันความคิดของคุณในส่วนความคิดเห็นด้านล่าง!