首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Bash无法识别文件测试操作符

Bash无法识别文件测试操作符
EN

Stack Overflow用户
提问于 2015-10-23 03:32:56
回答 1查看 615关注 0票数 2

我在Raspberry Pi 2上运行Raspbian-Wheezy (基于Debian) 3.18。当我尝试在bash中使用文件测试操作符时,我收到命令未找到错误。

例如:

>> -d ./bin

收益率

bash: -d: command not found

对于我尝试过的所有文件测试操作符(-d、-e、-f等),在终端和shell脚本中都会发生这种情况。据我所知,这些命令似乎应该内置到bash中。你知道我哪里错了吗?

EN

回答 1

Stack Overflow用户

发布于 2015-10-23 03:38:59

文件测试操作符仅在test命令(test[...][[...]])的上下文中可识别。这适用于-z-n等其他运算符,以及您可能希望在条件表达式中使用的大多数其他测试:

代码语言:javascript
复制
$ test -d bin
$

注意,没有输出;如果为真,它只将最后一个状态变量$?设置为0,如果为假,则设置为1。您必须使用if或其他工具才能使用该值:

代码语言:javascript
复制
if test -d ./bin; then
   echo "./bin is a directory"
else
   echo "./bin is not a directory"
fi
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33289214

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档