Cách kiểm tra sự tồn tại của đối số đầu vào trong tập lệnh Bash Shell

Cach Kiem Tra Su Ton Tai Cua Doi So Dau Vao Trong Tap Lenh Bash Shell



Bash shell scripting là một công cụ mạnh mẽ để tự động hóa các tác vụ lặp đi lặp lại và thực hiện các thao tác phức tạp trên dòng lệnh. Một trong những khái niệm cơ bản trong shell scripting là chấp nhận các đối số đầu vào từ người dùng hoặc từ các script khác. Khi xử lý các đối số đầu vào, điều cần thiết là phải kiểm tra xem đối số đầu vào có tồn tại hay không để tránh hành vi không mong muốn trong tập lệnh. Bài viết này sẽ thảo luận về các cách khác nhau để kiểm tra sự tồn tại của các đối số đầu vào trong tập lệnh shell Bash.

Cách kiểm tra sự tồn tại của đối số đầu vào trong tập lệnh Bash Shell

Có ba cách khác nhau:

  1. Sử dụng lệnh “kiểm tra”
  2. Sử dụng biến “$#”
  3. Sử dụng tùy chọn “-n”

Cách 1: Sử dụng lệnh “test”

Lệnh “kiểm tra”, còn được gọi là lệnh “[”, là một lệnh tích hợp trong Bash để kiểm tra các điều kiện khác nhau. Một trong những điều kiện mà chúng ta có thể kiểm tra bằng cách sử dụng lệnh “test” là liệu một biến có tồn tại hay không. Đây là một đoạn mã ví dụ để kiểm tra xem một đối số đầu vào có tồn tại hay không bằng cách sử dụng lệnh “test”:







#!/bin/bash

nếu như [ -Với '1 đô la' ]

sau đó

tiếng vang 'Đối số đầu vào bị thiếu.'

lối ra 1



tiếng vang 'Đối số đầu vào tồn tại.'

Ở đây, tùy chọn “-z” được sử dụng với lệnh “test” để kiểm tra xem đối số đầu vào có phải là một chuỗi rỗng hay không. Tập lệnh sẽ xuất thông báo lỗi và thoát với mã trạng thái là 1 nếu đối số đầu vào là một chuỗi trống. Nếu không, tập lệnh sẽ tiếp tục thực thi, bên dưới tôi đã cung cấp và nhập đối số cho mã để nó hiển thị thông báo về sự tồn tại của đầu vào đối số:





Phương pháp 2: Sử dụng biến “$#”

Các “$#” biến lưu trữ số lượng đối số đầu vào được truyền cho một tập lệnh. Nếu tập lệnh mong đợi ít nhất một đối số đầu vào, chúng ta có thể kiểm tra xem liệu “$#” biến lớn hơn không. Đây là một mã ví dụ để kiểm tra xem có tồn tại ít nhất một đối số đầu vào hay không bằng cách sử dụng “$#” Biến đổi:





#!/bin/bash

nếu như [ $# -eq 0 ]

sau đó

tiếng vang 'Đối số đầu vào bị thiếu.'

lối ra 1



tiếng vang 'Đối số đầu vào tồn tại.'

đây “-eq” toán tử được sử dụng để kiểm tra xem “$#” biến có bằng 0 hay không và nếu biến “$#” bằng 0, script sẽ hiển thị thông báo lỗi và thoát với mã trạng thái là 1. Nếu không, script sẽ tiếp tục thực thi, bên dưới tôi đã cung cấp và nhập liệu đối số cho mã để nó hiển thị thông báo về sự tồn tại của đầu vào của đối số:



Cách 3: Sử dụng tùy chọn “-n”

Các '-N' tùy chọn được sử dụng để kiểm tra xem một biến có trống không. Chúng ta có thể sử dụng tùy chọn này để kiểm tra xem đối số đầu vào có tồn tại hay không. Dưới đây tôi đã đưa ra một mã ví dụ để kiểm tra xem có tồn tại đối số đầu vào hay không bằng cách sử dụng '-N' lựa chọn:

#!/bin/bash

nếu như [ -N '1 đô la' ]

sau đó

tiếng vang 'Đối số đầu vào tồn tại.'

khác

tiếng vang 'Đối số đầu vào bị thiếu.'

lối ra 1

Ở đây, '-N' tùy chọn được sử dụng để kiểm tra xem đối số đầu vào có trống không và nếu đối số đầu vào không trống, tập lệnh sẽ hiển thị thông báo thành công. Nếu không, tập lệnh sẽ hiển thị thông báo lỗi và thoát với mã trạng thái là 1, bên dưới tôi đã cung cấp và đối số đầu vào cho mã để nó hiển thị thông báo về sự tồn tại của đầu vào đối số:

Phần kết luận

Trong shell scripting, kiểm tra sự tồn tại của các đối số đầu vào là một bước cần thiết để đảm bảo rằng script chạy như mong đợi. Chúng ta có thể sử dụng các kỹ thuật khác nhau để kiểm tra sự tồn tại của các đối số đầu vào, chẳng hạn như sử dụng lệnh “test”, biến “$#” hoặc tùy chọn “-n”. Bằng cách triển khai các kỹ thuật này, chúng tôi tạo ra các tập lệnh shell mạnh mẽ và đáng tin cậy hơn có thể xử lý các đối số đầu vào.