bash - bash -ex 输出中 + '[' ']' 的含义
问题描述
'[' ']' 在此输出中表示什么?
$ bash -ex ~/bin/client_services
+ : starting daemons reqd. for clients
++ ps aux
++ grep -q memcached
+ '[' ']'
我的源文件是:
if [ `ps aux | grep -q memcached` ]; then
echo 'Memcached exists'
fi
解决方案
你在这里说的是-x
bash 的调试标志的输出。首先它必须运行 . ps aux
,然后它必须运行grep ...
. 然后它必须测试结果。测试[...]
语法本身就是一个表达式,也必须进行评估。
是正在执行的测试的+ '[' ']'
表示,由 显示给您bash -x
。
推荐阅读
- javascript - 如何在请求后映射绝对安全的后端数据?
- javascript - 样式不适用于 Safari/Firefox 中的 LitElement
- database - 使用 - UTL_FILE.put_line 写入时 CSV 文件中缺少字段
- android - 服务通知的无效渠道:通知
- excel - 使用 VBA 自动复制行并将其粘贴为 Excel 中的列
- php - Foreach 循环不循环
- html - 如何保持背景图像质量清晰?
- node.js - ReferenceError:clientSecret 未在条带中定义
- sql - ORDER BY 列 = 值 desc|asc
- python-3.x - 从源代码构建 Tensorflow 时,Bazel 返回规则链接错误