transferlog.sh
#!/bin/bash
# this script is execute at 18:00
hosts=(192.168.48.111 192.168.48.112)
ssh_port='29922'
log_path='/var/log/nginx'
dst_path='/opt/log'
today=$(date -d now +'%Y%m%d')
for host in ${hosts[@]}
do
[ ! -d $dst_path/$host ] && mkdir -p $dst_path/$host
scp -P $ssh_port root@$host:$log_path/access.log-$today.gz $dst_path/$host
[ $? -eq 0 ] && echo "$today: transfer ok." >> $dst_path/$host.log || echo "$today: transfer error." >> $dst_path/$host.log
done
exit 0
cleanlog.sh
#!/bin/bash
# this script is execute at 17:00
log_path='/opt/log'
days='180'
find $log_path -name 'access.log-*gz' -ctime +$days |xargs rm -rf
exit 0
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
· AI与.NET技术实操系列(六):基于图像分类模型对图像进行分类