编写一个shell脚本,监测https://wlt.sc.gov.cn/页面访问情况,是否能正常访问,将访问的时长和状态码输出到/tmp/web_url.log文件中。
时间: 2024-10-19 13:05:19 浏览: 49
编写一个Shell脚本来监控网页访问情况并将其结果记录到日志文件中,你可以使用`curl`命令获取HTTP响应以及`grep`、`awk`等工具处理数据。以下是一个基本的示例:
```bash
#!/bin/bash
# 监控的URL
url=https://wlt.sc.gov.cn/
# 输出日志文件路径
log_file=/tmp/web_url.log
# 使用curl检查网站状态,并获取HTTP头信息(包括状态码)
response=$(curl -s --head $url)
# 检查状态码,如果成功则状态码一般为200,否则记录失败
status_code=$(echo $response | grep "HTTP/" | awk '{print $5}')
# 记录访问时间(这里假设curl命令已经足够快,可以忽略实际执行时间)
timestamp=$(date "+%Y-%m-%d %H:%M:%S")
# 将状态码和访问时间写入日志文件
echo "$timestamp $status_code" >> $log_file
# 如果状态码非200,打印错误信息
if [[ $status_code -ne 200 ]]; then
echo "[ERROR] Unable to access $url. Status code: $status_code"
fi
```
保存这个脚本到一个文件,比如`monitor_website.sh`,然后给它执行权限:
```bash
chmod +x monitor_website.sh
```
然后通过定时任务如cron定期运行这个脚本,例如每天早上8点执行一次:
```bash
0 8 * * * /path/to/monitor_website.sh
```
阅读全文