Cách kiểm tra biến được đặt hay trống trong bash

How Check Variable Is Set



Một biến có thể được xác định hoặc không được xác định. Khi bất kỳ biến nào không được khai báo hoặc được khai báo nhưng không có giá trị nào được gán thì biến đó không được đặt hoặc không được xác định. Khi bất kỳ biến nào được khai báo và gán giá trị thì biến đó được đặt. Nhiều khi nó yêu cầu phải biết biến cụ thể có được đặt hay không cho mục đích lập trình. Một trong những mục đích quan trọng của việc kiểm tra biến có được thiết lập hay không là xác thực dữ liệu. Bash không có chức năng tích hợp sẵn như các ngôn ngữ lập trình tiêu chuẩn khác để kiểm tra một biến có được thiết lập hay không. Nhưng bash có một tính năng để thực hiện nhiệm vụ này. Cách bạn có thể kiểm tra biến có được đặt hay không trong bash được trình bày trong hướng dẫn này.

Cú pháp:







[[ -vBiến đổi]]Hoặc[[ -VớiBiến đổi]]

Tùy chọn ‘-v’ hoặc ‘-z’ được sử dụng để kiểm tra biến được đặt hay không được đặt. Biểu thức Boolean ở trên sẽ trả về true nếu biến được đặt và trả về false nếu biến không được đặt hoặc trống.



$ {biến + chuỗi}

Thay thế tham số là một cách khác để kiểm tra biến được đặt hay không được đặt. Nếu biến được đặt, thì giá trị của chuỗi sẽ trả về nếu không sẽ trả về null.



Ví dụ-1: Kiểm tra biến được đặt hay không được đặt bằng tùy chọn ‘-z’

Tạo một tệp bash có tên check_var1.sh với tập lệnh sau. Đây, đầu tiên ` nếu` điều kiện sẽ trả về true và Biến số không được đặt sẽ in. Trong câu lệnh tiếp theo, 20 được gán cho biến, $ num . Điều kiện `if` thứ hai sẽ trả về false và Num được đặt và giá trị của Num = 20 sẽ in.





check_var1.sh

#! / bin / bash
# Kiểm tra biến có được đặt hay không
nếu như [ -Với $ {Num} ];sau đó
quăng đi Biến 'số' không được đặt '
khác
quăng đi 'Biến số' được đặt '
thì là ở
# Gán giá trị
trên một=hai mươi
# Kiểm tra biến có được đặt hay không sau khi gán giá trị
nếu như [ -Với $ {Num} ];sau đó
quăng đi Biến '' số '' không được đặt '
khác
quăng đi '' Num được đặt và giá trị của Num =$ num'
thì là ở

Chạy tập lệnh.



$bấu víucheckvar1.sh

Ví dụ-2: Kiểm tra biến được đặt hay không được đặt bằng cách sử dụng thay thế tham số

Tạo một tệp bash có tên check_var2.sh và thêm tập lệnh sau. Ở đây, một giá trị chuỗi được gán cho biến, $ str trước khi kiểm tra biến được đặt hay không được đặt. Điều kiện 'if' sẽ trả về true và thông báo, Biến 'str' được đặt và giá trị là Xin chào sẽ in.

check_var2.sh

#! / bin / bash
# Đặt biến
P= Xin chào
# Gán giá trị World để kiểm tra nếu biến str được đặt
kiểm tra=$ {str + Thế giới}
# Kiểm tra biến được đặt hay chưa đặt
nếu như [ $ checkval -eqThế giới];sau đó
quăng đi Biến 'str' được đặt và giá trị là$ str'
khác
quăng đi Biến 'str' không được đặt '
thì là ở

Chạy tập lệnh.

$bấu víucheckvar2.sh

Ví dụ-3: Kiểm tra biến có trống hay không

Tạo một tệp bash có tên check_var3.sh và thêm tập lệnh sau. Tập lệnh sẽ lưu đối số dòng lệnh đầu tiên vào một biến, $ argv được kiểm tra trong câu lệnh tiếp theo. Đầu ra sẽ là Đối số đầu tiên trống nếu không có đối số nào được truyền nếu không giá trị của đối số đầu tiên sẽ được in.

check_var3.sh

#! / bin / sh
# Đọc giá trị đối số dòng lệnh đầu tiên
argv='$ 1'
# Kiểm tra giá trị đối số đầu tiên có được cung cấp hay không
[ -v '$ argv' ] && quăng đi 'Đối số đầu tiên trống' ||
quăng đi 'Giá trị của đối số đầu tiên là$ argv'

Chạy tập lệnh mà không có bất kỳ đối số nào.

$bấu víucheckvar3.sh

Chạy tập lệnh với một đối số.

$bấu víucheckvar3.shkiểm tra

Phần kết luận

Các cách khác nhau để kiểm tra biến được đặt hay không được đặt hoặc trống được hiển thị trong hướng dẫn này bằng cách sử dụng các ví dụ khác nhau. Hy vọng, hướng dẫn này sẽ giúp người dùng tìm hiểu các cách kiểm tra bất kỳ biến bash nào.