以下 bash 脚本尝试读取文件并搜索给定的字符串。 在这种情况下,案例应该生成肯定的结果。 如果长度为零,即未找到字符串,则使用 Postfix 发送电子邮件(仅发送)。
#!/bin/bash
results=$(grep "Parameters: {\"id_at_chain\"=>\"001142\", \"articles\"" ~/makt/current/log/production.log)
lines=($results)
if [ -z "$results" ]; then
echo "array articles 001142 missing" | mail -s "problem 001142" [email protected] [email protected]
fi
我想要做的是放置一些验证代码来测试(并可能转储到日志文件):
• 是否找到该文件
• 是否$results
存在
• 的长度$results
我可以echo $results
并且它给出了预期的结果,但是
echo -z "$results"
似乎输出的$results
不是长度