用shell编写一个网站流量统计脚本
时间: 2023-09-20 12:09:46 浏览: 43
#!/bin/bash
# 定义日志文件路径
LOGFILE="/var/log/nginx/access.log"
# 定义统计时间范围
START_TIME=$(date -d "yesterday 00:00:00" +%s)
END_TIME=$(date -d "today 00:00:00" +%s)
# 统计访问次数
TOTAL_VISITS=$(awk -v start=$START_TIME -v end=$END_TIME '$4 > start && $4 < end {print}' $LOGFILE | wc -l)
# 统计独立访客数
UNIQUE_VISITORS=$(awk -v start=$START_TIME -v end=$END_TIME '$4 > start && $4 < end {print $1}' $LOGFILE | sort -u | wc -l)
# 统计流量
BYTES_SENT=$(awk -v start=$START_TIME -v end=$END_TIME '$4 > start && $4 < end {sum += $10} END {print sum}' $LOGFILE)
# 输出统计结果
echo "访问次数:$TOTAL_VISITS"
echo "独立访客数:$UNIQUE_VISITORS"
echo "流量:$BYTES_SENT bytes"
相关问题
用shell脚本编写一个lamp部署脚本
下面是一个简单的 Shell 脚本示例,用于在 Linux 上自动部署 LAMP(Linux + Apache + MySQL + PHP)环境:
```shell
#!/bin/bash
# 安装 Apache
sudo apt-get update
sudo apt-get install apache2 -y
# 安装 MySQL
sudo apt-get install mysql-server -y
# 安装 PHP
sudo apt-get install php libapache2-mod-php php-mysql -y
# 启动 Apache 服务
sudo systemctl start apache2
# 启动 MySQL 服务
sudo systemctl start mysql
# 设置 MySQL root 用户密码
sudo mysql -e "ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_password';"
# 重启 Apache 服务
sudo systemctl restart apache2
echo "LAMP 环境部署完成!"
```
请确保您在执行此脚本之前具有适当的权限,可以使用 `chmod +x script.sh` 命令将脚本文件设置为可执行。然后,使用 `./script.sh` 命令运行脚本。
请注意,在实际部署中,您可能需要根据您的需求进行更多的配置和优化。此示例只是一个简单的起点,您可以根据自己的需求进行修改和扩展。
shell 编写一个jar包升级脚本
可以的,您可以使用以下命令来编写一个 shell 脚本来升级 jar 包:
```
#!/bin/bash
# 定义变量
JAR_NAME="your-jar-name.jar"
NEW_JAR="new-jar-name.jar"
BACKUP_DIR="/path/to/backup/dir"
# 停止服务
systemctl stop your-service-name
# 备份旧的 jar 包
cp $JAR_NAME $BACKUP_DIR/$JAR_NAME-$(date +%Y%m%d%H%M%S)
# 下载新的 jar 包
wget -O $NEW_JAR http://your-domain.com/$NEW_JAR
# 替换旧的 jar 包
mv $NEW_JAR $JAR_NAME
# 启动服务
systemctl start your-service-name
```
您需要将 `your-jar-name.jar` 替换为您的 jar 包名称,将 `new-jar-name.jar` 替换为新的 jar 包名称,将 `/path/to/backup/dir` 替换为您备份旧 jar 包的目录路径,将 `your-service-name` 替换为您的服务名称。