sách gpt4 ai đã đi

Toán tử Bash: "!" so với "-z"

In lại 作者:行者123 更新时间:2023-12-04 02:58:36 26 4
mua khóa gpt4 Nike

运算符“!”有什么区别?和“-z”应用于字符串?

#Example 1
if [ ! STRING ]; then ...

#Example 2
if [ -z STRING ]; then ...

Cảm ơn

1 Câu trả lời

首先,您使用单个括号。这意味着您使用的是 Bài kiểm tra 命令而不是 Bash 内置函数。从手册:

test EXPRESSION hoặc [ EXPRESSION ]: this exits with the status returned by EXPRESSION

! EXPRESSION: Bài kiểm tra returns ĐÚNG VẬY của EXPRESSIONSAI

-z STRING: Bài kiểm tra returns ĐÚNG VẬY if the length of STRING is zero.


ví dụ:
$ [ -z "foo" ] && echo "zero length" || echo "non-zero length"
non-zero length
$ [ ! -z "foo" ] && echo "non-zero length" || echo "zero length"
non-zero length
$ [ -z "" ] && echo "zero length" || echo "non-zero length"
zero length
$ [ ! -z "" ] && echo "non-zero length" || echo "zero length"
zero length
但是现在您想知道 [ ! STRING ] :
手册指出 [ STRING ] 等效于 [ -n STRING ] ,它测试 STRING 是否具有非零长度。因此 [ ! STRING ] Tương đương với [ -z STRING ] .

-n STRING: the length of STRING is nonzero.

STRING: equivalent to -n STRING

source: man test



答案: [ ! STRING ] Tương đương với [ -z STRING ]

关于Bash 操作符 : "!" vs "-z",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51440450/

26 4 0
Bài viết được đề xuất: r - 获得 ECDF 的导数
Bài viết được đề xuất: php - 如何使用php从html中获取图像名称
Bài viết được đề xuất: jenkins-pipeline - 根据环境获取凭据
Bài viết được đề xuất: google-apps-script - 谷歌幻灯片 : newly inserted table not found
行者123
Hồ sơ cá nhân

Tôi là một lập trình viên xuất sắc, rất giỏi!

Nhận phiếu giảm giá Didi Taxi miễn phí
Mã giảm giá Didi Taxi
Giấy chứng nhận ICP Bắc Kinh số 000000
Hợp tác quảng cáo: 1813099741@qq.com 6ren.com