我需要在一个时间段内创建一个包含数值的图表,这些值代表网页中的在线用户。
脚本将每30分钟用cron执行一次,并且将使用wget下载所需的html文件。但是还有一些尚未解决的问题&问题:
-i需要从html代码中获取数值(但grep返回整行),我怎样才能得到数值?我可以用grep来获取它,它看起来像这样:
Users online: 24 917 </div>
我怎样才能得到24917?
- 什么会更容易?使用图形生成.svg文件,或将值保存在.csv文件中(并使用OOo或类似的东西生成图形)。也许还有其他一些好主意?
提前致谢,
-skazhy
答案 0 :(得分:3)
您可以执行以下操作来获取您的电话号码:
设置正则表达式:
digits='[[:digit:]]+ *[[:digit:]]*'
接下来是这两行:
num=$(echo $line | grep -Eo "$digits")
num=${num// }
或者这些:
# Bash >= 3.2 (syntax may be different for 3.0/3.1)
[[ $line =~ $digits ]]
num=${BASH_REMATCH[@]// }
从包含问题中的行的变量$line
中提取数字。
Gnuplot应该随时可用。可以找到其输出的一些示例here。
这些来自here。
答案 1 :(得分:0)
只需一个流程(grep):
array=( $(grep whatever filename ) ) && echo "${array[2]}${array[3]}"