shell - shell 脚本 - 参数过多
问题描述
我不确定是什么导致了这个错误。脚本继续运行并毫无问题地进入“if”语句。
“./test.sh:第 79 行:[:参数太多”
if [ grep -Fq "variable=00000000000" /home/me/test.txt ] ; then #line 79
........
........
else
echo "hi"
fi
解决方案
只需使用:
if grep -Fq "variable=00000000000" /home/me/test.txt; then
[...]
或者
grep -Fq "variable=00000000000" /home/me/test.txt && echo 'true'
解释
每个命令都有一个返回码,您可以使用以下命令显示:
true
echo $? # return 0, true in bash
false
echo $? # return 1: false in bash
它被命名为布尔逻辑
推荐阅读
- javascript - 通过 React 中的回调函数获取 API
- flutter - 如何在我的应用处于暂停状态时控制它?
- hyperledger-fabric - Hyperledger Fabric 中的真实外部 CA
- python - 当我试图在我的 cmd 中安装 pandas 时,我得到了他的错误
- r - 如何在 R 中向 POSIXct 对象添加天数
- blazor - Blazor Webassembly - 标头中的 JWT(在我的应用程序之前)
- android - Android PagedList 滚动到底部
- php - 重新索引多维数组
- python-3.x - 要求:安装 iRedMail 时 Centos 7 上的 python(abi) = 3.6
- google-app-engine - 在部署到 appengine 时在云构建中设置 goproxy