ในคู่มือนี้คุณจะเห็นวิธีใช้คำสั่งหยิกเพื่อดาวน์โหลดไฟล์และหน้าเว็บ ถ้าคุณต้องการทราบสิ่งที่เป็นขดและเมื่อคุณควรใช้มันมากกว่า wget อ่าน หน้า นี้
คำสั่ง curl สามารถใช้เพื่อถ่ายโอนไฟล์โดยใช้รูปแบบต่างๆเช่น http, https, ftp และแม้แต่ smb
คู่มือนี้จะแสดงวิธีการใช้คำสั่งและจะแนะนำคุณกับสวิตช์และคุณสมบัติที่สำคัญจำนวนมาก
การใช้ Command Curl Basic
คำสั่ง curl สามารถใช้ในการดาวน์โหลดไฟล์จากอินเทอร์เน็ต แต่ในรูปแบบพื้นฐานคุณสามารถดาวน์โหลดเนื้อหาของหน้าเว็บตรงไปยังหน้าต่างเทอร์มินัล
ตัวอย่างเช่นป้อนคำสั่งต่อไปนี้ลงในหน้าต่างเทอร์มินัล:
ม้วน http://linux.about.com/cs/linux101/g/curl.htm
ผลลัพธ์จะเลื่อนขึ้นในหน้าต่างเทอร์มินัลและจะแสดงรหัสสำหรับเว็บเพจที่เชื่อมโยง
แน่นอนหน้าเลื่อนเร็วเกินไปที่จะอ่านและดังนั้นถ้าคุณต้องการที่จะชะลอตัวลงคุณควรใช้ คำสั่งน้อย หรือ คำสั่งเพิ่มเติม
ม้วน http://linux.about.com/cs/linux101/g/curl.htm | มากกว่า
ส่งเนื้อหาของ curl ไปยังแฟ้ม
ปัญหาเกี่ยวกับการใช้คำสั่ง curl ขั้นพื้นฐานคือข้อความเลื่อนเร็วมากและถ้าคุณกำลังดาวน์โหลดไฟล์เช่นภาพ ISO คุณไม่ต้องการให้เอาต์พุตมาตรฐานนี้
ในการบันทึกเนื้อหาลงในไฟล์ทั้งหมดที่คุณต้องทำคือระบุการลบ o (-o) ดังนี้:
curl -o
ดังนั้นการดาวน์โหลดหน้าที่เชื่อมโยงกับส่วนการใช้คำสั่งพื้นฐานทั้งหมดที่คุณต้องทำคือใส่คำสั่งต่อไปนี้:
curl -o curl.htm http://linux.about.com/cs/linux101/g/curl.htm
หลังจากดาวน์โหลดไฟล์แล้วคุณสามารถเปิดไฟล์ในโปรแกรมแก้ไขหรือโปรแกรมดีฟอลต์ตามประเภทไฟล์ได้
คุณสามารถลดความซับซ้อนของข้อมูลนี้ได้โดยใช้สวิตช์ลบ O (-O) ดังนี้:
curl -O http://linux.about.com/cs/linux101/g/curl.htm
ซึ่งจะใช้ส่วนชื่อไฟล์ของ URL และทำให้ชื่อไฟล์เป็น URL ที่ถูกบันทึกไว้ ในตัวอย่างข้างต้นไฟล์จะเรียกว่า curl.htm
รันคำสั่ง Curl ในพื้นหลัง
โดยค่าเริ่มต้นคำสั่ง curl จะแสดงแถบความคืบหน้าเพื่อบอกให้ทราบว่ามีข้อมูลเหลืออยู่และมีการถ่ายโอนข้อมูลเท่าไร
ถ้าคุณเพียงแค่ต้องการให้คำสั่งทำงานเพื่อให้คุณสามารถใช้งานร่วมกับสิ่งอื่น ๆ ได้สิ่งแรกที่คุณต้องทำก็คือเรียกใช้งานในโหมดเงียบและคุณต้องเรียกใช้เป็น คำสั่งพื้นหลัง
เมื่อต้องการเรียกใช้คำสั่งเงียบใช้คำสั่งต่อไปนี้:
curl -s -O
เพื่อให้คำสั่งทำงานในพื้นหลังคุณต้องใช้เครื่องหมาย (&) ดังนี้:
curl -s -O
กำลังดาวน์โหลด URL หลายรายการพร้อม Curl
คุณสามารถดาวน์โหลดได้จากหลาย URL โดยใช้คำสั่ง curl เดียว
ในรูปแบบที่ง่ายที่สุดคุณสามารถดาวน์โหลด URL หลายรายการดังนี้
curl -O http://www.mysite.com/page1.html -O http://www.mysite.com/page2.html
ลองจินตนาการถึงแม้ว่าคุณจะมีโฟลเดอร์ 100 ภาพที่เรียกว่า image1.jpg, image2.jpg, image3.jpg ฯลฯ คุณไม่ต้องการพิมพ์ URL ทั้งหมดเหล่านี้และไม่จำเป็นต้องทำ
คุณสามารถใช้วงเล็บเหลี่ยมเพื่อจัดหาช่วง ตัวอย่างเช่นหากต้องการรับไฟล์ตั้งแต่ 1 ถึง 100 คุณสามารถระบุข้อมูลต่อไปนี้
curl -O http://www.mysite.com/images/image[1-100].jpg
คุณสามารถใช้วงเล็บปีกกาเพื่อระบุไซต์หลายแห่งที่มีรูปแบบคล้ายกัน
ตัวอย่างเช่นสมมติว่าคุณต้องการดาวน์โหลด www.google.com และ www.bing.com คุณสามารถใช้คำสั่งต่อไปนี้:
curl -O http: // www. {google, bing} .com
แสดงความคืบหน้า
โดยค่าเริ่มต้นคำสั่ง curl จะส่งกลับข้อมูลต่อไปนี้เนื่องจากจะดาวน์โหลด URL:
- รวม%
- ไบต์ทั้งหมด
- ได้รับ / ย้ายแล้ว%
- ได้รับ / โอนย้ายไบต์
- ความเร็วในการดาวน์โหลดเฉลี่ย
- ความเร็วในการอัปโหลดเฉลี่ย
- เวลารวม
- ใช้เวลา
- เวลาที่เหลือ
- ความเร็วปัจจุบัน
หากคุณต้องการแถบความคืบหน้าแบบง่ายๆซึ่งระบุสวิทช์ลบ hash (- #) ดังนี้:
curl - # -O
การจัดการการเปลี่ยนเส้นทาง
ลองจินตนาการว่าคุณได้ระบุ URL ไว้เป็นส่วนหนึ่งของคำสั่ง curl และคิดว่าคุณมีที่อยู่ที่ถูกต้องในการดาวน์โหลดไฟล์ขนาดใหญ่เพื่อที่จะได้กลับมาดูภายหลังว่าทั้งหมดที่คุณมีคือหน้าเว็บที่ระบุว่า "หน้าเว็บนี้ถูกเปลี่ยนเส้นทางไปที่ www.blah ดอทคอม" ที่จะน่ารำคาญก็ไม่ได้
คำสั่งขดเป็นฉลาดในการที่จะสามารถปฏิบัติตามการเปลี่ยนเส้นทาง ทั้งหมดที่คุณต้องทำคือการใช้สวิตช์ L ลบ (-L) ดังนี้:
curl -OL
ลดอัตราการดาวน์โหลด
หากคุณดาวน์โหลดไฟล์ขนาดใหญ่และมีการเชื่อมต่ออินเทอร์เน็ตที่ไม่ดีคุณอาจรบกวนครอบครัวหากพยายามทำสิ่งต่างๆบนอินเทอร์เน็ตด้วย
โชคดีที่คุณสามารถลดอัตราการดาวน์โหลดได้โดยใช้คำสั่ง curl เพื่อที่จะใช้เวลาในการดาวน์โหลดไฟล์นานขึ้นเพื่อให้ทุกคนมีความสุข
curl -O - จำกัด อัตรา 1m
อัตราสามารถระบุเป็นกิโลไบต์ (k หรือ K) เมกะไบต์ (m หรือ m) หรือกิกะไบต์ (g หรือ G)
ดาวน์โหลดไฟล์จากเซิร์ฟเวอร์ FTP
คำสั่ง curl สามารถจัดการได้มากกว่าการถ่ายโอนไฟล์ HTTP สามารถจัดการ FTP, GOPHER, SMB, HTTPS และรูปแบบอื่น ๆ
หากต้องการดาวน์โหลดไฟล์จากเซิร์ฟเวอร์ FTP ให้ใช้คำสั่งต่อไปนี้:
curl -u ผู้ใช้: รหัสผ่าน -o
หากคุณระบุชื่อไฟล์เป็นส่วนหนึ่งของ URL ไฟล์จะดาวน์โหลด แต่ถ้าคุณระบุชื่อโฟลเดอร์จะแสดงรายชื่อโฟลเดอร์
คุณยังสามารถใช้ curl เพื่ออัปโหลดไฟล์ไปยังเซิร์ฟเวอร์ ftp โดยใช้คำสั่งต่อไปนี้:
curl -u ผู้ใช้: รหัสผ่าน -T <ชื่อไฟล์>
ชื่อไฟล์และ
การส่งผ่านข้อมูลฟอร์มไปยังแบบฟอร์ม
คุณสามารถใช้ Curl เพื่อกรอกแบบฟอร์มออนไลน์และส่งข้อมูลเหมือนกับที่คุณกรอกข้อมูลออนไลน์ บริการที่ได้รับความนิยมมากมายเช่น Google บล็อกการใช้งานประเภทนี้
ลองจินตนาการว่ามีแบบฟอร์มที่มีชื่อและที่อยู่อีเมล คุณสามารถส่งข้อมูลดังต่อไปนี้:
curl -d name = john email=john@mail.com www.mysite.com/formpage.php
มีวิธีการถ่ายโอนข้อมูลรูปแบบต่างๆ คำสั่งข้างต้นใช้ข้อความพื้นฐาน แต่ถ้าคุณต้องการใช้การเข้ารหัสหลายแบบซึ่งจะช่วยให้ถ่ายโอนภาพคุณจำเป็นต้องใช้สวิตช์ F F ()
สรุป
คำสั่ง curl มีวิธีการตรวจสอบสิทธิ์จำนวนมากและคุณสามารถใช้เพื่อเข้าถึงไซต์ FTP ส่งอีเมลเชื่อมต่อกับที่อยู่ SAMBA อัปโหลดและดาวน์โหลดไฟล์และอื่น ๆ อีกมากมาย
หากต้องการดูข้อมูลเพิ่มเติมเกี่ยวกับการม้วนอ่านหน้าคู่มือ