Thứ Sáu, 28 tháng 7, 2023

Cách sử dụng lệnh Wget trong Linux

Trong bài viết này chúng ta sẽ tìm hiểu cách sử dụng lệnh wget trong Linux, lệnh này giúp tải các file từ internet bằng cách sử dụng các giao thức được sử dụng phổ biến hiện nay như HTTP, HTTPS và FTP.

Wget là một package có sẵn và hoàn toàn miễn phí và được cấp dưới giấy phép GNU GPL.Tiện ích này có thể cài đặt trên bất kì hệ điều hành nào giống với hệ điều hành Unix bao gồm Windows và MAC OS.Đặc điểm chính của wget là nó rất mạnh mẽ.

Wget vẫn làm việc trong điều kiện mạng yếu hoặc không ổn định. Wget tự động bắt đầu download lại file đó nếu trong trường hợp mạng có vấn đề. Và nó cũng tải file theo một cách đệ quy, có nghĩa là nó tải file cho đến khi nào hoàn tất thì thôi.

Mục lục

  • I. Kiểm tra Wget đã được cài hay chưa
  • II. Tổng hợp 10 ví dụ về lệnh Wget trong Linux
    • 1. Tải một file đơn giản
    • 2. Tải file với một tên khác
    • 3. Tải nhiều file với giao thức HTTP và FTP
    • 4. Đọc địa chỉ URL từ một file có sẵn
    • 5.Tiếp tục tải về khi chưa hoàn tất
    • 6. Tải file với việc nối .1 vào tên file
    • 7. Tải file trong background
    • 8. Hạn chế giới hạn tốc độ tải xuống
    • 9. Hạn chế download FTP và HTTP với username và password
    • 10. Kiểm tra phiên bản hiện tại của Wget và lệnh Help

I. Kiểm tra Wget đã được cài hay chưa

Trước khi sử dụng Wget thì bạn cần phải kiểm tra là nó đã được cài đặt trên máy Linux của bạn hay chưa.

Bài viết này được đăng tại [tranvanbinh.vn]

Chúng ta sử dụng lệnh sau để kiểm tra.

1
2
3
#rpm -qa wget
 
wget-1.12-1.4.e16.i686

Nếu hiển thị như trên thì máy bạn đã cài đặt sẵn Wget.

Nếu máy của bạn chưa cài đặt Wget thì bạn có thể sử dụng lệnh YUM, còn không bạn có thể download nó tại đây: http://ftp.gnu.org/gnu/wget/

1
#yum -y install wget

Dấu gạch ngang -y được sử dụng ở đây là để ngăn chặn lời nhắc xác thực trước khi cài đặt bất kì package nào.

Sau bước kiểm tra máy đã cài đặt Wget được hay chưa bây giờ ta sẽ đi vào 10 chức năng mạnh mẽ của Wget

II. Tổng hợp 10 ví dụ về lệnh Wget trong Linux

1. Tải một file đơn giản

Lệnh này sẽ download một file từ Internet về máy và lưu trữ nó trong thư mục hiện tại (nếu muốn biết bạn đang ở thư mục nào sử dụng lệnh pwd).

Khi được tải về trên terminal sẽ hiển thị các thông tin như quá trình tải về, kích thước file, ngày giờ tải về trong khi tải cho chúng ta.

2. Tải file với một tên khác

Sử dụng -O (viết hoa) để tải file với tên file mà bạn muốn lưu.

Như ở trên thì ta sẽ có được một file tải về có tên là wget.zip

3. Tải nhiều file với giao thức HTTP và FTP

Chúng ta sẽ xem cách tải nhiều file sử dụng giao thức HTTP và FTP với một lệnh wget được thực hiện như thế nào nhé.

4. Đọc địa chỉ URL từ một file có sẵn

Bạn có thể lưu trữ một địa chỉ URL trong một file và sau đó download nó sử dụng lựa chọn là -i.

Bên dưới mình đã tạo một file tmp.txt trong thư mục wget, nơi mà ta sẽ lưu trữ địa chỉ URL để tải về.

1
# wget -i /wget/tmp.txt

5.Tiếp tục tải về khi chưa hoàn tất

Khi bạn đang tải một file có kích thước lớn nhưng không may có sự cố xảy ra thì nó sẽ dừng việc tải xuống. Trong trường này nếu bạn muốn tiếp tục tải phần còn lại của file đó thì chúng ta sử dụng tùy chọn -c.

Nhưng nếu bạn tải một file mà không có -c thì wget sẽ thêm .1 vào phần mở rộng ở cuối file, và xem đó như một bản tải xuống mới. Vì vậy, cách tốt nhất là thêm -c vào khi bạn muốn tải một file có kích thước lớn.

6. Tải file với việc nối .1 vào tên file

Khi bạn bắt đầu tải xuống mà không có lựa chọn -c thì lệnh wget sẽ thêm .1 vào cuối file và bắt đầu với việc tải một file mới. Nếu file .1 đã tồn tại thì file .2 sẽ được nối vào cuối của file.

Chúng ta thấy .1 đã được nối vào cuối của file.

1
2
3
4
# ls -l CentOS*
 
-rw-r--r--. 1 root root 3877262 Oct  2 12:47 CentOS-6.3-x86_64-LiveDVD.iso
-rw-r--r--. 1 root root  181004 Oct  2 12:50 CentOS-6.3-x86_64-LiveDVD.iso.1

7. Tải file trong background

Chúng tôi sẽ nói sơ qua background là gì để bạn hiểu, khi bạn thực hiện một hành động hay còn gọi một tiến trình trong linux thì bạn có 2 cách để chạy nó, đó là background process và foreground process.

Lợi thế của việc chạy một tiến trình trong background là bạn có thể chạy có lệnh khác mà không phải đợi tới khi nó kết thúc mới bắt đầu một tiến trình mới.

Trong lệnh wget chúng ta muốn tải một file trong background thì sử dụng lựa chọn -b, sau khi tải xong nó sẽ ngay lập tức được ghi vào trong file /wget/log.txt.

1
2
3
 
Continuing in background, pid 3550.

8. Hạn chế giới hạn tốc độ tải xuống

Với lựa chọn là -limit-race=100k, giới hạn tốc độ tải xuống là 100k và nó sẽ được lưu vào file /wget/log.txt như hình bên dưới.

9. Hạn chế download FTP và HTTP với username và password

Với lựa chọn -http-user=username-http-password=password, và -ftp-user=username-ftp-password=password, bạn có thể tải xuống các website bị hạn chế mật khẩu như hình bên dưới.

10. Kiểm tra phiên bản hiện tại của Wget và lệnh Help

Với lựa chọn là -version, bạn có thể xem phiên bản hiện tại của wget và -help nếu bạn cần được giúp đỡ thêm về lệnh wget.

1
2
3
# wget --version
 
# wget --help

Trên là cách sử dụng lệnh wget trong Linux, với lệnh này bạn có thể tại dữ liệu trên internet một cách thoải mái. Chúc bạn thành công.

=============================
* KHOÁ HỌC ORACLE DATABASE A-Z ENTERPRISE trực tiếp từ tôi giúp bạn bước đầu trở thành những chuyên gia DBA, đủ kinh nghiệm đi thi chứng chỉ OA/OCP, đặc biệt là rất nhiều kinh nghiệm, bí kíp thực chiến trên các hệ thống Core tại VN chỉ sau 1 khoá học.
* CÁCH ĐĂNG KÝ: Gõ (.) hoặc để lại số điện thoại hoặc inbox https://m.me/tranvanbinh.vn hoặc Hotline/Zalo 090.29.12.888
* Chi tiết tham khảo:
https://bit.ly/oaz_w
=============================
KẾT NỐI VỚI CHUYÊN GIA TRẦN VĂN BÌNH:
📧 Mail: binhoracle@gmail.com
☎️ Mobile/Zalo: 0902912888
👨 Facebook: https://www.facebook.com/BinhOracleMaster
👨 Inbox Messenger: https://m.me/101036604657441 (profile)
👨 Fanpage: https://www.facebook.com/tranvanbinh.vn
👨 Inbox Fanpage: https://m.me/tranvanbinh.vn
👨👩 Group FB: https://www.facebook.com/groups/DBAVietNam
👨 Website: https://www.tranvanbinh.vn
👨 Blogger: https://tranvanbinhmaster.blogspot.com
🎬 Youtube: https://www.youtube.com/@binhguru
👨 Tiktok: https://www.tiktok.com/@binhguru
👨 Linkin: https://www.linkedin.com/in/binhoracle
👨 Twitter: https://twitter.com/binhguru
👨 Podcast: https://www.podbean.com/pu/pbblog-eskre-5f82d6
👨 Địa chỉ: Tòa nhà Sun Square - 21 Lê Đức Thọ - Phường Mỹ Đình 1 - Quận Nam Từ Liêm - TP.Hà Nội

=============================
oracle tutorial, học oracle database, Tự học Oracle, Tài liệu Oracle 12c tiếng Việt, Hướng dẫn sử dụng Oracle Database, Oracle SQL cơ bản, Oracle SQL là gì, Khóa học Oracle Hà Nội, Học chứng chỉ Oracle ở đầu, Khóa học Oracle online,sql tutorial, khóa học pl/sql tutorial, học dba, học dba ở việt nam, khóa học dba, khóa học dba sql, tài liệu học dba oracle, Khóa học Oracle online, học oracle sql, học oracle ở đâu tphcm, học oracle bắt đầu từ đâu, học oracle ở hà nội, oracle database tutorial, oracle database 12c, oracle database là gì, oracle database 11g, oracle download, oracle database 19c, oracle dba tutorial, oracle tunning, sql tunning , oracle 12c, oracle multitenant, Container Databases (CDB), Pluggable Databases (PDB), oracle cloud, oracle security, oracle fga, audit_trail,oracle RAC, ASM, oracle dataguard, oracle goldengate, mview, oracle exadata, oracle oca, oracle ocp, oracle ocm , oracle weblogic, postgresql tutorial, mysql tutorial, mariadb tutorial, ms sql server tutorial, nosql, mongodb tutorial, oci, cloud, middleware tutorial, hoc solaris tutorial, hoc linux tutorial, hoc aix tutorial, unix tutorial, securecrt, xshell, mobaxterm, putty

ĐỌC NHIỀU

Trần Văn Bình - Oracle Database Master