【发布时间】:2016-11-18 15:00:03
【问题描述】:
我在 Bash 中有一个简单的脚本来读取文件中的数字,然后将其与不同的阈值进行比较。输出是这样的:
: integer expression expected
: integer expression expected
OK: 3
我的代码是这样的:
#!/bin/bash
wget=$(wget http://10.228.28.8/ -O /tmp/wget.txt 2>/dev/null)
output=$(cat /tmp/wget.txt | awk 'NR==6')
#output=7
echo $output
if [ $output -ge 11 ];then
echo "CRITICAL: $output"
exit 2
elif [ $output -ge 6 ] && [ $output -lt 11 ];then
echo "WARNING: $output"
exit 1
else
echo "OK: $output"
exit 0
fi
rm /tmp/wget.txt
我知道问题出在哪里,我知道我正在读取一个字符串并尝试比较一个 int。但我不知道如何读取此文件并将数字转换为 int var 中的读取..
有什么想法吗?
【问题讨论】:
-
没有问题是你忘了报价。
-
对不起,这是我的第一篇文章,我不知道如何使用。无论如何感谢您的帮助;)
-
@hectormarina : 你在哪一行得到错误?
-
运行
wget后/tmp/wget.txt的内容是什么? -
我怀疑你的
wget.txt有 DOS 行尾...
标签: string bash shell scripting