Unix và Linux là những hệ điều hành mạnh mẽ và linh hoạt, cả hai đều cung cấp công cụ cần thiết cho quản trị hệ thống. Trong các công cụ này, vòng lặp là một phần quan trọng giúp cho phép người dùng tự động hóa nhiều công việc lặp đi lặp lại mà không cần sự can thiệp thủ công. Cùng khám phá cách điều khiển vòng lặp trong môi trường Unix/Linux qua bài viết dưới đây.

1. Vòng lặp For trong Unix/Linux

Trong trường hợp chúng ta có một mảng xác định và cần lặp qua toàn bộ các phần tử có trong mảng. Vòng lặp for là một cách tiện lợi để chúng ta có thể lặp qua các phần tử này một cách nhanh chóng và thuận tiện. Cú pháp cơ bản như sau:

for variable in list
do
    # Các lệnh được thực thi trong vòng lặp
done

Chúng ta có thể xem ví dụ lặp qua các tập tin trong một thư mục và hiển thị tên của chúng như sau:

for file in /path/to/directory/*
do
    echo $file
done

Điều khiển vòng lặp trong Unix/Linux (Hình 1)

>>> Xem thêm bài viết tại đây:

2. Vòng lặp While trong Unix/Linux

Khác với vòng lặp for , vòng lặp while là vòng lặp không xác định trước số lần lặp, vòng lặp while sẽ kết thúc khi điều kiện chỉ định là sai. Cú pháp vòng lặp while như sau:

while [ condition ]
do
    # Các lệnh được thực thi trong vòng lặp
done

Chúng ta có thể xem qua ví dụ đọc từng dòng của một tệp tin và hiển thị chúng như sau:

while read line
do
    echo $line
done < filename

Điều khiển vòng lặp trong Unix/Linux (Hình 2)

3. Vòng lặp Until trong Unix/Linux

Ngược lại với vòng lặp while, vòng lặp until sẽ chạy cho đến khi điều kiện chỉ định là đúng. Chúng ta có cú pháp như sau:

until [ condition ]
do
    # Các lệnh được thực thi trong vòng lặp
done

Ví dụ để kiểm tra một dịch vụ đang chạy hay không:

until systemctl status myservice
do
    sleep 5
done

4. Lệnh For in Command Substitution trong Unix/Linux

Ngoài vòng lặp for thông thường, chúng ta có thể sử dụng command substitution để lấy giá trị từ một lệnh và sử dụng chúng trong vòng lặp:

for item in $(ls /path/to/directory)
do
    echo $item
done

5. Break và Continue trong Unix/Linux

Để kiểm soát quá trình lặp, chúng ta có thể sử dụng lệnh break để thoát khỏi vòng lặp và lệnh continue để bỏ qua một phần của vòng lặp và chuyển đến lần lặp tiếp theo.

for i in {1..10}
do
    if [ $i -eq 5 ]; then
        break  # thoát khỏi vòng lặp khi i = 5
    fi

    if [ $i -eq 3 ]; then
        continue  # bỏ qua lần lặp khi i = 3
    fi

    echo $i
done

Điều khiển vòng lặp trong Unix/Linux (Hình 3)

Tổng kết

Với sức mạnh của vòng lặp trong Unix/Linux, chúng ta có thể tự động hóa nhiều công việc và tối ưu hóa quá trình quản lý hệ thống. Tìm hiểu kỹ hơn về vòng lặp trong hệ điều hành Unix/Linux là một trong những cách giúp chúng ta tối ưu cũng như làm cho hệ thống hoạt động một cách khác biệt hơn những hệ thống thông thường.


Stringee Communication APIs là giải pháp cung cấp các tính năng giao tiếp như gọi thoại, gọi video, tin nhắn chat, SMS hay tổng đài CSKH cho phép tích hợp trực tiếp vào ứng dụng/website của doanh nghiệp nhanh chóng. Nhờ đó giúp tiết kiệm đến 80% thời gian và chi phí cho doanh nghiệp bởi thông thường nếu tự phát triển các tính năng này có thể mất từ 1 - 3 năm.

Bộ API giao tiếp của Stringee hiện đang được tin dùng bởi các doanh nghiệp ở mọi quy mô, lĩnh vực ngành nghề như TPBank, VOVBacsi24, VNDirect, Shinhan Finance, Ahamove, Logivan, Homedy, Adavigo, bTaskee…

Quý bạn đọc quan tâm xin mời đăng ký NHẬN TƯ VẤN TẠI ĐÂY

Banner bottom