Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/bash/15.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash:[-f]&&;echo 1#正确检查的文件是什么?_Bash_Conditional Statements - Fatal编程技术网

Bash:[-f]&&;echo 1#正确检查的文件是什么?

Bash:[-f]&&;echo 1#正确检查的文件是什么?,bash,conditional-statements,Bash,Conditional Statements,当我在表达式:[-f]&&echo 1中未添加任何文件名时,哪个文件被检查为已存在且常规的文件 $ [ -f ] && echo "1" 1 未检查任何文件[根据收到的参数数解释其参数(忽略]) 在这种情况下,只有一个参数,-f不是一元运算符;它只是一个非空字符串。这意味着它相当于[-n-f],它之所以成功,是因为一元运算符-n的参数确实不是空的。我回滚了一个编辑,该编辑将-f放在引号中,因为引号实际上不会改变含义,实际上模糊了一点,-f的解释完全依赖于上下文。

当我在表达式:
[-f]&&echo 1
中未添加任何文件名时,哪个文件被检查为已存在且常规的文件

$ [ -f ] &&  echo "1"
1

未检查任何文件<代码>[根据收到的参数数解释其参数(忽略
]


在这种情况下,只有一个参数,
-f
不是一元运算符;它只是一个非空字符串。这意味着它相当于
[-n-f]
,它之所以成功,是因为一元运算符
-n
的参数确实不是空的。

我回滚了一个编辑,该编辑将
-f
放在引号中,因为引号实际上不会改变含义,实际上模糊了一点,
-f
的解释完全依赖于上下文。