我在脚本中有以下块来验证挂载点是否为tmpfs
if [ "$(stat -f -c '%T' $LOGDIR)" -ne 'tmpfs' ]
then
echo "Log directory ($LOGDIR) must be tmpfs"
exit 1
fi
问题在于,如果文件系统作为ext2 / ext3返回,那么shell会尝试对其进行评估并以零除的方式进行转换。如何强制将其视为常规字符串?
答案 0 :(得分:2)
不要使用-ne
算术运算符,请使用字符串运算符!=
。
bash
?我得到了integer expression expected
。
答案 1 :(得分:2)
使用!=
进行字符串比较; -ne
仅用于整数比较。 (实际上,我很惊讶它尝试使用“ext2 / ext3”进行算术,而不是简单地将整个字符串视为零值。)