Nội dung bài viết
#

Wget Command là gì? 12 ví dụ sử dụng lệnh wget trong Linux

Nội dung bài viết

    Trong bài viết này, BKHOST giải thích cho bạn về lệnh wget trong Linux thông qua các ví dụ thực tế. Ok, hãy cũng bắt đầu ngay thôi nào.

    Wget Command là gì?

    Wget Command trong Linux
    Wget Command trong Linux

    GNU Wget là một tiện ích dòng lệnh hỗ trợ tải xuống các tệp từ web. Với Wget, bạn có thể tải xuống các tệp bằng giao thức HTTP, HTTPS và FTP. Wget cung cấp một số tùy chọn cho phép bạn tải xuống nhiều tệp, tiếp tục tải xuống, giới hạn băng thông, tải xuống đệ quy, tải xuống trong nền, phản chiếu trang web và hơn thế nữa.

    Cài đặt Wget

    Trên hầu hết các bản phân phối của Linux hiện nay đều hỗ trợ các gói wget được cài đặt sẵn.

    Bạn có thể kiểm tra gói Wget trên hệ thống của bạn đã được cài đặt hay chưa bằng cách, vào console -> nhập gwet -> nhấn enter.

    Nếu bạn đã cài đặt wget, hệ thống sẽ hiển thị wget: missing URL. Nếu chưa, hệ thống sẽ hiển thị dòng lệnh: wget command not found

    Trong trường hợp chưa được cài đặt, bạn vẫn có thể tự cài đặt nó một cách dễ dàng dựa vào trình quản lý gói từ bản phân phối Linux của bạn.

    Cài đặt Wget trên Ubuntu và Debian

    {{EJS0}}

    Cài đặt Wget trên CentOS và Fedora

    {{EJS1}}

    Cú pháp lệnh Wget

    Trước khi đi vào cách sử dụng lệnh wget, hãy bắt đầu bằng cách xem lại cú pháp cơ bản.

    Các biểu thức tiện ích wget có dạng sau:

    {{EJS2}}

    Trong đó:

    • options – Các tùy chọn Wget
    • urlURL của tệp hoặc thư mục bạn muốn tải xuống hoặc đồng bộ hóa.

    Ví dụ về sử dụng Wget Command trong Linux

    vi du Wget Command trong Linux

    1. Cách tải tệp với wget

    Ở dạng đơn giản nhất, khi được sử dụng mà không có bất kỳ tùy chọn nào, wget sẽ tải soucre được chỉ định trong vào thư mục hiện tại.

    Trong ví dụ sau, minh họa cho trường hợp tải xuống kho lưu trữ tar nhân Linux:

    {{EJS3}}

    cai tai tep voi wget

    Từ hình ảnh trên bạn có thể thấy, wget bắt đầu bằng cách phân giải địa chỉ IP của miền, sau đó kết nối với máy chủ từ xa và bắt đầu chuyển.

    Trong quá trình tải xuống, wget hiển thị các thông tin như: thanh tiến trình cùng với tên tệp, kích thước tệp, tốc độ tải xuống và thời gian ước tính để hoàn tất quá trình tải xuống. Sau khi quá trình tải xuống hoàn tất, bạn có thể tìm thấy tệp đã tải xuống trong thư mục làm việc hiện tại của mình.

    Muốn tắt đầu ra, hãy sử dụng tùy chọn -q.

    Nếu tệp đã cài đặt tệp trước đó, wget sẽ thêm .n (số) vào cuối tên tệp vừa tải.

    2. Lưu tệp đã tải xuống dưới tên khác

    Bạn có thể thay đổi tên tệp được lưu sau khi tải xuống bằng cách sử dụng tùy chọn – O theo sau là tên mà bạn mong muốn:

    {{EJS4}}

    Lệnh trên sẽ lưu tệp zip hugo mới nhất từ ​​GitHub với tên là new-hugo.zip thay vì tên mặc định của nó.

    3. Tải tệp xuống một thư mục cụ thể

    Theo mặc định, wget sẽ lưu tệp đã tải xuống trong thư mục làm việc hiện tại. Để lưu tệp vào một vị trí chỉ định, có thể dùng tùy chọn -P:

    {{EJS5}}

    Lệnh trên yêu cầu wget lưu tệp CentOS 7 iso vào thư mục /mnt/iso.

    4. Giới hạn tốc độ tải xuống

    Hãy dùng tùy chọn –limit-rate để có thể giới hạn tốc độ tải xuống tệp. Đơn vị đo lường mặc định là byte/ giây với k đại diện cho kilobyte, m cho megabyte và g cho gigabyte.

    Lệnh sau sẽ tải xuống tệp nhị phân Go và giới hạn tốc độ tải xuống là 1MB:

    {{EJS6}}

    Tùy chọn này giúp bạn điều khiển được lượng băng thông trong quá trình tải tệp.

    5. Tiếp tục tải xuống

    Nếu không may, máy của bạn bị chết hay ngắt kết nối trong quá trình tải một tệp lớn. Hãy sử dụng tùy chọn -c để có thể tiếp tục quá trình tải trước đó thay vì phải tải lại từ đầu.

    Trong ví dụ sau, là ví dụ cho quá trình tiếp tục tải xuống tệp iso Ubuntu 18.04:

    {{EJS7}}

    Trong trường hợp máy chủ từ xa không cho phép tiếp tục tải xuống, wget sẽ tự động tải lại từ đầu và ghi đè lên tệp trước đó.

    6. Tải xuống trong nền

    Để tải xuống trong nền, hãy sử dụng tùy chọn -b. Trong ví dụ sau, là quá trình tải xuống tệp iso OpenSuse ở chế độ nền:

    {{EJS8}}

    Theo mặc định, đầu ra được chuyển hướng đến tệp wget-log trong thư mục hiện tại. Để xem trạng thái tải xuống, hãy sử dụng lệnh tail:

    {{EJS9}}

    7. Thay đổi tác nhân người dùng Wget

    Đôi khi khi tải xuống một tệp, máy chủ từ xa có thể được đặt để chặn Wget User-Agent. Trong những tình huống như thế này, để mô phỏng một trình duyệt khác, hãy chuyển tùy chọn -U.

    {{EJS10}}

    Lệnh trên sẽ giả lập Firefox 60 yêu cầu trang từ wget-forbidden.com

    8. Tải xuống nhiều tệp

    Bạn còn có thể tiết kiệm thời gian tải bằng cách tải nhiều tệp cùng lúc nhờ vào tùy chọn -i, theo sau là đường dẫn đến tệp cục bộ hoặc tệp bên ngoài có chứa danh sách các URL sẽ được tải xuống. Mỗi URL cần phải nằm trên một dòng riêng biệt.

    Ví dụ sau đây cho thấy cách tải xuống tệp iso Arch Linux, Debian và Fedora bằng cách sử dụng URL được chỉ định trong tệp linux-distros.txt:

    {{EJS11}}
    {{EJS12}}

    Nếu bạn chỉ định – dưới dạng tên tệp, các URL sẽ được đọc từ đầu vào tiêu chuẩn.

    9. Tải xuống qua FTP

    Việc tải xuống các tệp từ máy chủ FTP có yêu cầu đăng nhập cũng không làm khó được bạn, hãy dùng câu lệnh sau đây kèm theo thông tin usernamepassword

    {{EJS13}}

    10. Tạo một trang web phản chiếu

    Để tạo bản sao của một trang web với wget, hãy sử dụng tùy chọn -m. Điều này sẽ tạo ra một bản sao cục bộ hoàn chỉnh của trang web bằng cách theo dõi và tải xuống tất cả các liên kết nội bộ cũng như các tài nguyên của trang web (JavaScript, CSS, Hình ảnh).

    {{EJS14}}

    Nếu bạn muốn sử dụng trang web đã tải xuống để duyệt cục bộ, bạn sẽ cần chuyển một vài đối số bổ sung cho lệnh trên.

    {{EJS15}}

    Tùy chọn -k sẽ khiến wget chuyển đổi các liên kết trong các tài liệu đã tải xuống làm chúng trở nên phù hợp hơn với từng khu vực.

    Tùy chọn -p sẽ yêu cầu wget tải xuống tất cả các tệp cần thiết để hiển thị trang HTML.

    11. Bỏ qua kiểm tra chứng chỉ

    Nếu bạn muốn tải xuống tệp qua HTTPS từ máy chủ có chứng chỉ SSL không hợp lệ hoặc không có chứng chỉ SSL, hãy sử dụng tùy chọn –no-check-certificate:

    {{EJS16}}

    12. Tải xuống đầu ra tiêu chuẩn

    Trong ví dụ sau, wget sẽ âm thầm (flag -q) tải xuống và xuất phiên bản WordPress mới nhất sang stdout (flag -O –) sau đó chuyển nó đến tiện ích tar, tiện ích này sẽ giải nén kho lưu trữ vào thư mục /var/www.

    {{EJS17}}

    Tổng kết về Wget Command trong Linux

    Nhờ vào wget, việc tải tệp từ web sẽ trở nên dễ dàng và linh hoạt theo từng nhu cầu của bạn. Bạn có thể tải nhiều tệp cùng lúc, tiếp tục tải xuống tệp đã bị gián đoạn trước đó, v.v tùy theo từng tùy chọn wget mà bạn sử dụng.

    Nếu có nhu cầu tham khảo thêm về lệnh wget, hãy truy cập trang hướng dẫn sử dụng GNU wget hay về những mẹo thao tác và quản lý khác trên 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.

    P/s: Bạn cũng có thể truy cập vào Blog của BKHOST để đọc thêm các bài viết chia sẻ kiến thức về lập trình, quản trị mạng, website, domain, hosting, vps, server, email,… Chúc bạn thành công.

    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 cao cấp

    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

    Trượt lên đầu trang
    Gọi ĐT tư vấn ngay
    Chat ngay qua Zalo
    Chat ngay qua Messenger
    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 !