Curl คืออะไรและทำไมคุณถึงใช้?

หน้าคู่มือสำหรับคำสั่ง "curl" มีคำอธิบายต่อไปนี้:

curl เป็นเครื่องมือในการถ่ายโอนข้อมูลจากหรือไปยังเซิร์ฟเวอร์โดยใช้หนึ่งในโปรโตคอลที่สนับสนุน (DICT, FILE, FTP, FTPS, GOPHER, HTTP, HTTPS, IMAP, IMAPS, LDAP, LDAPS, POP3, POP3S, RTMP, RTSP, SCP, SFTP, SMB, SMBS, SMTP, SMTPS, TELNET และ TFTP) คำสั่งนี้ออกแบบมาให้ทำงานได้โดยไม่ต้องมีการโต้ตอบกับผู้ใช้

โดยทั่วไปคุณสามารถใช้ curl เพื่อดาวน์โหลดเนื้อหาจากอินเทอร์เน็ต ตัวอย่างเช่นหากคุณรันคำสั่ง curl ด้วยที่อยู่เว็บที่กำหนดไว้ที่ http://linux.about.com/cs/linux101/g/curl.htm จากนั้นจะดาวน์โหลดหน้าเว็บที่เชื่อมโยง

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

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

curl -o ubuntu.iso http://releases.ubuntu.com/16.04.1/ubuntu-16.04.1-desktop-amd64.iso

ฉันควรใช้ Curl หรือ Wget หรือไม่?

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

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

คำสั่ง curl ช่วยให้คุณสามารถใช้สัญลักษณ์แทนเพื่อระบุ URL ที่คุณต้องการเรียกค้น ดังนั้นถ้าคุณทราบว่ามี URL ที่ถูกต้องเรียกว่า "http://www.mysite.com/images/image1.jpg" และ "http://www.mysite.com/images/image2.jpg" จากนั้นคุณจะสามารถดาวน์โหลดได้ทั้งสองแบบ ภาพที่มี URL เดียวที่ระบุด้วยคำสั่ง curl

คำสั่ง wget สามารถกู้คืนได้เมื่อการดาวน์โหลดล้มเหลวในขณะที่คำสั่ง curl ไม่สามารถทำได้

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

ป่านนี้มีเหตุผลมากมายที่จะใช้ wget มากกว่า curl แต่ไม่มีอะไรเป็นไปทำไมคุณจะใช้ curl over wget

คำสั่ง curl สนับสนุนโปรโตคอลมากกว่าคำสั่ง wget นอกจากนี้ยังสนับสนุน SSL ได้ดีขึ้น นอกจากนี้ยังสนับสนุนวิธีการตรวจสอบมากกว่า wget คำสั่ง curl ยังทำงานบนแพลตฟอร์มมากกว่าคำสั่ง wget

คุณลักษณะ Curl

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

คุณสามารถระบุช่วงเพื่อให้ง่ายต่อการดาวน์โหลด URL ที่มีชื่อเส้นทางคล้ายคลึงกัน

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

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

คำสั่ง curl ทำงานบนไฟล์ขนาดใหญ่กว่า 2 กิกะไบต์สำหรับทั้งดาวน์โหลดและอัพโหลด

ตามที่หน้านี้ซึ่งเปรียบเทียบคุณสมบัติดัดกับเครื่องมือดาวน์โหลดอื่น ๆ คำสั่ง curl มีฟังก์ชันดังต่อไปนี้: