写一个shell脚本,过滤前一天的/tomcat/logs/a位置文件中访问ip最多,和访问时间段
时间: 2023-03-08 17:58:22 浏览: 107
这是一个简单的shell脚本,可以帮助你过滤前一天的/tomcat/logs/a位置文件。
#!/bin/bash
# filter the access ip and time from the log files
# Log file location
log_file="/tomcat/logs/a"
# Get the date of yesterday
yesterday=`date -d "1 days ago" +%Y-%m-%d`
# Filter the IP address
cat $log_file | grep $yesterday | awk '{print $1}' | sort | uniq -c | sort -nr | head -n 10
# Filter the access time
cat $log_file | grep $yesterday | awk '{print substr($3,12,2)}' | sort | uniq -c | sort -nr | head -n 10
相关问题
写一个sh脚本,清理/appl/cdtest/Tomcat/logs里面catalina.out文件
您可以创建一个名为 `clean_logs.sh` 的脚本来清理 `/appl/cdtest/Tomcat/logs` 目录下的 `catalina.out` 文件。以下是一个简单的示例:
```bash
#!/bin/bash
# 指定日志文件路径
log_file="/appl/cdtest/Tomcat/logs/catalina.out"
# 检查文件是否存在
if [ -f "$log_file" ]; then
# 清空日志文件内容
echo "" > "$log_file"
echo "已清空 $log_file 的内容"
else
echo "$log_file 不存在"
fi
```
使用文本编辑器创建一个新文件,并将上述代码复制粘贴到文件中。保存并关闭文件后,通过运行以下命令将其设置为可执行脚本:
```bash
chmod +x clean_logs.sh
```
然后,您可以通过运行以下命令来执行脚本以清理 `catalina.out` 文件:
```bash
./clean_logs.sh
```
请注意,这个脚本只会清空 `catalina.out` 文件的内容,而不会删除文件本身。如果您需要删除整个文件,可以使用 `rm` 命令,如 `rm "$log_file"`。但在清理日志文件之前,请确保您不再需要其中的任何日志数据。
shell脚本定时删除/opt/bitnami/mongodb/logs下的mongodb.log文件
可以使用以下的 shell 脚本来定时删除 `/opt/bitnami/mongodb/logs` 目录下的 `mongodb.log` 文件:
```bash
#!/bin/bash
# 删除 mongodb.log 文件
rm /opt/bitnami/mongodb/logs/mongodb.log
# 输出日志信息
echo "$(date): mongodb.log 文件已删除"
```
然后,使用 `crontab` 命令来设置定时任务,比如每天凌晨 3 点执行一次:
```bash
# 打开 crontab 编辑器
crontab -e
# 在编辑器中添加以下内容,保存并退出
0 3 * * * /path/to/your/script.sh
```
其中,`/path/to/your/script.sh` 需要替换为你实际的脚本文件路径。这样,每天凌晨 3 点,系统就会自动执行该脚本,删除 `mongodb.log` 文件。
阅读全文