Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我在脚本中有以下块来验证挂载点是否为 tmpfs
if [ "$(stat -f -c '%T' $LOGDIR)" -ne 'tmpfs' ] then echo "Log directory ($LOGDIR) must be tmpfs" exit 1 fi
问题是,如果文件系统以 ext2/ext3 形式返回,那么 shell 会尝试对其进行评估,然后除以零。如何强制将其视为常规字符串?
不要使用-ne算术运算符,使用字符串运算符!=。
-ne
!=
顺便说一句,bash你运行的是什么版本?我越来越integer expression expected。
bash
integer expression expected
用于!=字符串比较;-ne仅用于整数比较。(实际上,我很惊讶它尝试使用“ext2/ext3”进行算术运算,而不是简单地将整个字符串视为零值。)