我在 bash 脚本中遇到 if
问题。我已经编写了以下 if 条件,但它会产生错误:
if [[ "$capacity" != *10 && "$capacity" != *20 ]] || [[ "$capacity" != *80 && "$capacity" != *100 ]]; then
简单来说,我想比较(两个值不等于)|| (两个值不等于)条件使用或运算符
最佳答案
我接受了你的线路并添加了足够多的额外线路使其成为 Minimal, Complete, and Verifiable example :
#!/bin/bash
capacity=55
if [[ "$capacity" != *10 && "$capacity" != *20 ]] || [[ "$capacity" != *80 && "$capacity" != *100 ]]; then
echo "match"
fi
然后我这样运行它:
$ chmod +x ./myscript
$ ./myscript
match
它写的是“match”,完全符合我的预期。
请你做同样的事情好吗?
- 添加足够多的行以便我可以在我的机器上运行你的代码
- 展示你如何运行它以及它输出什么
- 解释为什么这与您的预期不同
关于linux - Bash 脚本使用 if 条件产生错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48531927/