Nội dung bài viết
#

cURL là gì? Tổng hợp các lệnh cơ bản của cURL trong Linux

cURL là một trong những công cụ phát triển web miễn phí tốt nhất hiện nay và là thứ mà mọi lập trình viên nên biết.Trong bài viết này, BKHOST sẽ giới thiệu lệnh cURL, khám phá cách thức và lý do nó được sử dụng, đồng thời giới thiệu một số ví dụ về lệnh cURL phổ biến và các trường hợp sử dụng.

cURL là gì?

curl la gi

cURL là viết tắt của “Client for URLs” và là một công cụ dòng lệnh mạnh mẽ để gửi và nhận dữ liệu từ mạng. CURL có thể gửi và nhận dữ liệu sử dụng nhiều giao thức mạng như HTTP, HTTPS, FTP, FTPS, SCP, SFTP, TFTP, DICT, TELNET, LDAP hoặc FILE. CURL là một công cụ được sử dụng rộng rãi trong lập trình và quản trị mạng.

Các tính năng của CURL

CURL cung cấp rất nhiều tính năng cho người dùng, bao gồm:

  • Hỗ trợ nhiều giao thức mạng
  • Hỗ trợ gửi và nhận dữ liệu dưới dạng POST và GET
  • Hỗ trợ tải tập tin từ mạng
  • Hỗ trợ mã hóa dữ liệu sử dụng SSL và TLS
  • Hỗ trợ tùy chỉnh header gửi đi
  • Hỗ trợ tùy chỉnh cookies

Các lệnh cURL cơ bản trong Linux

Cú pháp cơ bản của lệnh cURL là:

curl [options] [URL ...]

Trong đó, [options] là các tùy chọn có thể sử dụng để điều chỉnh hoạt động của cURL và [URL] là địa chỉ URL của máy chủ mà bạn muốn thực hiện yêu cầu đến.

Ví dụ, để thực hiện yêu cầu GET tới địa chỉ https://www.example.com, bạn có thể sử dụng lệnh sau:

curl https://www.example.com

Lệnh chuyển hướng đến trang đích

Khi bạn nhập URL này thì bạn sẽ được chuyển hướng đến trang đích bằng dòng lệnh bên dưới. Bạn sẽ được gửi yêu cầu qua đường dẫn curl

curl https://www.geeksforgeeks.org

Lệnh trên sẽ hiển thị nội dung của URL trên thiết bị đầu cuối. Cú pháp URL phụ thuộc vào giao thức và nhiều URL có thể được viết thành các bộ như:
curl http: // site. {one, two, three} .com

Các URL có chuỗi dãy số có thể được viết như sau:
curl ftp://ftp.example.com/file[1-20].jpeg

Lệnh đo tốc độ truyền dữ liệu

cURL sẽ hiển thị dữ liệu đo tiến trình trong quá trình tải về để cho biết tốc độ truyền, lượng dữ liệu đã tải về máy, thời gian còn lại, v.v.

curl - # -O ftp://ftp.example.com/file.zip
curl --silent ftp://ftp.example.com/file.zip

Ví dụ:

lenh do toc do truyen du lieu

Nếu bạn thích hiển thị dữ liệu tiến trình dạng cột thay vì đồng hồ đo, bạn có thể sử dụng tùy chọn – # như trong ví dụ trên hoặc –silent nếu bạn muốn ẩn nó hẳn đi.

Tùy chọn tên cho tệp dữ liệu tải về từ máy chủ

Bạn có thể lựa chọn cách lưu tệp của tập tin tải về với hai lựa chọn dưới đây. Bạn sẽ có thể tùy chỉnh đặt tên theo cách của mình sao cho dễ nhớ nhất.

-o: cho phép lưu tệp đã tải xuống trên máy với tên theo ý muốn.

Cú pháp:

curl -o [file_name] [URL ...]

Ví dụ:
curl -o hello.zip ftp://speedtest.tele2.net/1MB.zip

Output:

tai xuong tep tu may chu ftp-1

Ví dụ ở trên tải xuống tệp từ máy chủ FTP và lưu tệp với tên hello.zip.

-O: Tùy chọn này tải xuống tệp và lưu nó với tên giống như trong URL.

Cú pháp:

curl -O [URL ...]

Ví dụ:
curl -O ftp://speedtest.tele2.net/1MB.zip

Output:

tai xuong tep tu may chu ftp-2

Tải dữ liệu ngắt quãng

Bạn không phải lo lắng việc tập tin tải về bị lỗi do quá trình tải xuống gặp lỗi gây gián đoạn nữa. Lệnh này giúp đảm bảo cho tập tin tải về luôn giữ được chất lượng tốt dù đó là tập tin có dữ liệu lớn hay là gặp sự cố khi truyền tải.

Cú pháp:

curl -C - [URL ...]

Ví dụ:
curl -C - -O ftp://speedtest.tele2.net/1MB.zip

Output:

tai du lieu ngăt quang

Giới hạn dung lượng truyền dữ liệu tối đa

–Limit-rate: Tùy chọn này giới hạn tỷ lệ dữ liệu Kết quả trả về của thiết bị trên tốc độ truyền dữ liệu và giữ nó ở giá trị đã cho tính bằng byte.

Cú pháp:

curl --limit-rate [value] [URL]

Ví dụ:
curl --limit-rate 1000K -O ftp://speedtest.tele2.net/1MB.zip

Output:

gioi han dung luong truyen du lieu toi da
Lệnh giới hạn tổng dữ liệu tải xuống 1000K byte.

Lệnh tải file từ máy chủ

cURL cũng cung cấp các tùy chọn để tải xuống tệp từ máy chủ FTP đã được xác thực của người dùng.

Cú pháp:

curl -u {user}: {password} [FTP_URL]

Ví dụ:
curl -u demo: password -O ftp://test.rebex.net/readme.txt

Output:

lenh tai file tu may chu

Tải dữ liệu lên máy chủ

Để truy cập máy chủ FTP được bảo vệ bằng curl, hãy sử dụng tùy chọn -u và chỉ định tên người dùng và mật khẩu như dưới đây.

Cú pháp:

curl -u {user}: {password} -T {filename} {FTP_Location}

Nếu bạn muốn nối một tệp FTP đã tồn tại, bạn có thể sử dụng tùy chọn -a hoặc –append .

Lệnh Libcurl

Tùy chọn này rất có giá trị theo quan điểm của nhà phát triển. Nếu tùy chọn này được thêm vào bất kỳ lệnh curl nào, nó sẽ xuất ra mã nguồn C , mã nguồn được sử dụng libcurl cho tùy chọn nào được chỉ định. Nó là một đoạn mã tương tự như việc triển khai dòng lệnh.

Cú pháp:

curl [URL ...] --libcurl [filename]

Ví dụ:
curl https://www.geeksforgeeks.org> log.html --libcurl code.c

Output:

giao thuc Libcurl
Ví dụ trên tải xuống HTML và lưu nó vào log.html và mã trong tệp code.c. Lệnh tiếp theo hiển thị 30 dòng đầu tiên của mã.

Lệnh sử dụng Proxy

cURL cho phép hỗ trợ nhiều loại proxy khác nhau. Do vậy, để chuyển dữ liệu từ máy chủ cần cài đặt proxy thích hợp.

-x, –proxy: curl cũng cho phép người dùng sử dụng proxy để truy cập URL.

Cú pháp:

curl -x [proxy_name]: [port] [URL ...]

Nếu proxy yêu cầu xác thực, nó có thể sử dụng bằng lệnh sau:
curl -u [user]: [password] -x [proxy_name]: [port] [URL ...]

Gửi mail: Vì curl có thể truyền dữ liệu qua bất cứ các giao thức khác nhau nào bao gồm cả SMTP nên bạn có thể sử dụng curl để gửi mail.

Cú pháp:

curl –url [SMTP URL] –mail-from [sender_mail] –mail-rcpt [receiver_mail] -n –ssl-reqd -u {email}: {password} -T [Mail text file]

Lệnh DICT

Libcurl xác định giao thức DICT có thể được sử dụng để dễ dàng lấy định nghĩa hoặc ý nghĩa của bất kỳ từ nào trực tiếp từ dòng lệnh.

Cú pháp:

curl [protocol: [dictionary_URL]: [word]

Ví dụ:
curl dict://dict.org/d:overclock

Output:

giao thuc dict

Tổng kết về lệnh cURL trong Linux

Hy vọng bài hướng dẫn này có thể giúp bạn hiểu rõ lệnh curl trong Linux là gì và nó mạnh mẽ như thế nào. Điều quan trọng nhất là bạn đã biết cách sử dụng curl command.

Ngoài ra, nếu bạn còn muốn tìm hiểu thêm những câu lệnh khác hoặc những mẹo sử dụng Linux, hãy để lại bình luận ở bên dưới, BKHOST sẽ trả lời bạn trong thời gian sớm nhất.

Mua Hosting Cao Cấp tại BKHOST

Giảm giá cực sâu, chất lượng hàng đầu. Đăng ký ngay hôm nay:

hosting chất lượng cao

Tôi là Trịnh Duy Thanh, CEO & Founder Công ty Cổ Phần Giải Pháp Mạng Trực Tuyến Việt Nam - BKHOST. Với sứ mệnh mang tới các dịch vụ trên Internet tốt nhất cho các cá nhân và doanh nghiệp trong nước và quốc tế, tôi luôn nỗ lực hết mình nâng cấp đầu tư hệ thống phần cứng, nâng cao chất lượng dịch vụ chăm sóc khách hàng để đem đến những sản phẩm hoàn hảo nhất cho người tiêu dùng. Vì vậy, tôi tin tưởng sẽ đem đến các giải pháp CNTT mới nhất, tối ưu nhất, hiệu quả nhất và chi phí hợp lý nhất cho tất cả các doanh nghiệp.
Bình luận

Thanh toán linh hoạt

Chúng tôi chấp nhận thanh toán như ATM, Visa, Internet Banking, Paypal, Baokim, Ngân lượng

Gọi ĐT tư vấn ngay
Chat ngay qua Zalo
Chat ngay qua Messenger
Góp ý
Bạn đã hài lòng với trải nghiệm trên Bkhost.vn?
Cảm ơn lượt bình chọn của bạn, Chúc bạn 1 ngày tốt lành !