Lệnh wget trong Linux

Giới thiệu

Trong lab này, bạn sẽ học cách sử dụng lệnh wget của Linux để tải xuống các tệp từ internet. Lệnh wget là một công cụ mạnh mẽ cho phép bạn tải xuống các tệp từ web, bao gồm các trang web, hình ảnh và các loại nội dung khác. Bạn sẽ bắt đầu bằng cách hiểu mục đích và cú pháp của lệnh wget, bao gồm các tùy chọn phổ biến và ví dụ sử dụng. Sau đó, bạn sẽ học cách tải xuống các tệp từ internet bằng wget và cách tự động hóa việc tải tệp bằng scripting wget.

Hiểu Mục đích và Cú pháp của Lệnh wget

Trong bước này, bạn sẽ tìm hiểu về mục đích và cú pháp của lệnh wget trong Linux. Lệnh wget là một công cụ mạnh mẽ được sử dụng để tải xuống các tệp từ internet.

Trước tiên, hãy hiểu cú pháp cơ bản của lệnh wget:

wget [options] [URL]

Các tùy chọn phổ biến nhất được sử dụng với wget là:

  • -O hoặc --output-document=FILE: Lưu tệp đã tải xuống với một tên khác.
  • -P hoặc --directory-prefix=PREFIX: Lưu tệp đã tải xuống trong thư mục được chỉ định.
  • -c hoặc --continue: Tiếp tục tải xuống đã bị gián đoạn trước đó.
  • -r hoặc --recursive: Tải xuống các tệp một cách đệ quy, bao gồm các thư mục và thư mục con.
  • -b hoặc --background: Chạy wget trong nền.

Ví dụ sử dụng:

wget https://example.com/file.zip

Điều này sẽ tải xuống tệp file.zip từ URL https://example.com/file.zip và lưu nó trong thư mục hiện tại.

Ví dụ đầu ra:

--2023-04-11 10:00:00--  https://example.com/file.zip
Resolving example.com (example.com)... 93.184.216.34
Connecting to example.com (example.com)|93.184.216.34|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 12345678 (12M) [application/zip]
Saving to: 'file.zip'

file.zip            100%[===================>]  12.35M  3.32MB/s    in 3.7s

2023-04-11 10:00:04 (3.32 MB/s) - 'file.zip' saved [12345678/12345678]

Đầu ra hiển thị tiến trình tải xuống, kích thước tệp và thời gian cần thiết để hoàn tất quá trình tải xuống.

Tải xuống Tệp từ Internet Sử dụng wget

Trong bước này, bạn sẽ học cách sử dụng lệnh wget để tải xuống các tệp từ internet.

Hãy bắt đầu bằng cách tải xuống một tệp từ một trang web:

wget https://example.com/file.zip

Điều này sẽ tải xuống tệp file.zip từ URL https://example.com/file.zip và lưu nó trong thư mục hiện tại.

Ví dụ đầu ra:

--2023-04-11 10:00:00--  https://example.com/file.zip
Resolving example.com (example.com)... 93.184.216.34
Connecting to example.com (example.com)|93.184.216.34|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 12345678 (12M) [application/zip]
Saving to: 'file.zip'

file.zip            100%[===================>]  12.35M  3.32MB/s    in 3.7s

2023-04-11 10:00:04 (3.32 MB/s) - 'file.zip' saved [12345678/12345678]

Bạn cũng có thể lưu tệp đã tải xuống với một tên khác bằng cách sử dụng tùy chọn -O hoặc --output-document:

wget -O myfile.zip https://example.com/file.zip

Điều này sẽ tải xuống cùng một tệp nhưng lưu nó dưới dạng myfile.zip thay vì file.zip.

Nếu bạn muốn tải xuống một tệp vào một thư mục cụ thể, hãy sử dụng tùy chọn -P hoặc --directory-prefix:

wget -P ~/downloads https://example.com/file.zip

Điều này sẽ tải xuống tệp và lưu nó trong thư mục ~/downloads.

Tự động hóa Tải xuống Tệp bằng Scripting wget

Trong bước này, bạn sẽ học cách sử dụng wget trong một script để tự động hóa việc tải xuống tệp.

Trước tiên, hãy tạo một script đơn giản để tải xuống nhiều tệp:

#!/bin/bash

## URLs to download
urls=(
  "https://example.com/file1.zip"
  "https://example.com/file2.tar.gz"
  "https://example.com/file3.pdf"
)

## Download each file
for url in "${urls[@]}"; do
  wget "$url"
done

Lưu script này dưới dạng download_files.sh và làm cho nó có thể thực thi:

chmod +x download_files.sh

Bây giờ, bạn có thể chạy script để tải xuống các tệp:

./download_files.sh

Điều này sẽ tải xuống ba tệp được chỉ định trong mảng urls.

Bạn cũng có thể thêm các tùy chọn vào lệnh wget trong script. Ví dụ: để lưu các tệp trong một thư mục cụ thể:

#!/bin/bash

## Download directory
download_dir="~/downloads"

## URLs to download
urls=(
  "https://example.com/file1.zip"
  "https://example.com/file2.tar.gz"
  "https://example.com/file3.pdf"
)

## Create the download directory if it doesn't exist
mkdir -p "$download_dir"

## Download each file
for url in "${urls[@]}"; do
  wget -P "$download_dir" "$url"
done

Script này sẽ tạo thư mục ~/downloads (nếu nó chưa tồn tại) và tải xuống các tệp vào thư mục đó.

Tóm tắt

Trong lab này, bạn đã tìm hiểu về mục đích và cú pháp của lệnh wget trong Linux, một công cụ mạnh mẽ được sử dụng để tải xuống các tệp từ internet. Bạn đã khám phá các tùy chọn phổ biến được sử dụng với wget, chẳng hạn như -O để lưu tệp đã tải xuống với một tên khác, -P để lưu tệp trong một thư mục được chỉ định, -c để tiếp tục tải xuống đã bị gián đoạn trước đó, -r để tải xuống các tệp một cách đệ quy và -b để chạy wget trong nền. Bạn cũng đã học cách sử dụng wget để tải xuống các tệp từ internet, bao gồm chỉ định URL và quan sát tiến trình tải xuống, kích thước tệp và thời gian cần thiết để hoàn tất quá trình tải xuống.

Sau đó, bạn đã học cách tự động hóa việc tải xuống tệp bằng scripting wget, cho phép bạn lên lịch và quản lý nhiều lần tải xuống tệp hiệu quả hơn.

400+ câu lệnh phổ biến trong Linux