[${variable}]]与bash中的[[-n${variable}]]相同吗?
我阅读了另一个人在bash中编写的代码。 它包括以下代码:[${variable}]]与bash中的[[-n${variable}]]相同吗?,bash,Bash,我阅读了另一个人在bash中编写的代码。 它包括以下代码: [[ ${variable} ]] 它似乎起到了同样的作用 [[ -n ${variable} ]] 它是否正确?是的,在[[中没有任何选项([[是bash关键字),其行为与使用-n选项完全相同,即检查字符串是否为非空(即长度>0),并给出退出状态0,如果字符串不是您可以想象的空字符串。谢谢您的回答。请让我再问您一点。当变量定义为整数时,有什么问题吗?@mora No,就像我说的,它只检查长度,没有其他。尽管注意,整数测试是不同的,
[[ ${variable} ]]
它似乎起到了同样的作用
[[ -n ${variable} ]]
它是否正确?是的,在
[[
中没有任何选项([[
是bash
关键字),其行为与使用-n
选项完全相同,即检查字符串是否为非空(即长度>0),并给出退出状态0
,如果字符串不是您可以想象的空字符串。谢谢您的回答。请让我再问您一点。当变量定义为整数时,有什么问题吗?@mora No,就像我说的,它只检查长度,没有其他。尽管注意,整数测试是不同的,并且使用-gt
,-lt
等选项,-n
是一个纯粹的字符串测试。@mora我认为不是一个关键字,因为有一个程序叫做just[
。看看/usr/bin/[
@Peregring lk,还有一个shell内置的[
(并且会优先于外部的)。