shell习题-处理日志

写一个脚本查找/data/log目录下,最后创建时间是3天前,后缀是*.log的文件,打包后发送至192.168.1.2服务上的/data/log下,并删除原始.log文件,仅保留打包后的文件

#!/bin/bash

find /data/log -name “*.log” -mtime +3 > /tmp/file.list
cd /data/log
tar czvf log.tar.gz `cat /tmp/file.list|xargs`
rsync -a log.tar.gz  192.168.1.2:/data/log  //这一步需要提前做一个免密码登录
for f in `cat /tmp/file.list`
do
    rm -f $f
done
时间: 2024-11-10 05:26:32

shell习题-处理日志的相关文章

shell习题-清理日志

要求:两类机器一共300多台,写个脚本自动清理这两类机器里面的日志文件.在堡垒机批量发布,也要批量发布到crontab里面. A类机器日志存放路径很统一,B类机器日志存放路径需要用*匹配(因为这个目录里除了日志外,还有其他文件,不能删除.匹配的时候可用*.log) A类:/opt/cloud/log/   删除7天前的B类: /opt/cloud/instances/  删除15天前的 要求写在一个脚本里面.不用考虑堡垒机上的操作,只需要写出shell脚本. #!/bin/bash dir1=/

linux shell习题训练

shell习题训练 求2个数之和 计算1-100的和 将一目录下所有的文件的扩展名改为bak 编译当前目录下的所有.c文件: 打印root可以使用可执行文件数,处理结果: root's bins: 2306 打印当前sshd的端口和进程id,处理结果: sshd Port&&pid: 22 5412 输出本机创建20000个目录所用的时间,处理结果: real 0m3.367s user 0m0.066s sys 0m1.925s 打印本机的交换分区大小,处理结果: Swap:1024M

Shell + crontab 实现日志压缩归档

Shell + crontab 实现日志压缩归档 crontab 1 # archive the ats log file, keep 7 days. 2 */5 * * * * root /bin/sh /path/archive_atslog.sh >/dev/null 2>&1 shell 1 #!/bin/bash 2 # Author : standby 3 # Date : 2017-04-17 4 # Description : Archive the live log,

shell 脚本执行日志通用模块

目标 实现记录SHELL执行的開始时间,结束时间.执行状态,错误信息等,以函数封装日志记录的方式,脚本调用函数 源代码 通用函数脚本program_log_new.sh function init_log() { sqlplus -S test/[email protected] <<EOF insert into program_log values($id,$day,'$1', sysdate,null,'S',null); commit exit EOF } function modif

shell实战之日志脱敏

本次实战目标为日志脱敏,将日志目录内的所有文件进行处理,凡是涉及到卡号和密码的信息,一律以“*”号替代,要替代的内容都从对应的标签内获取,本脚本执行目录 drwxr-xr-x 5 root root 4096 May 31 20:20 log -rw-r--r-- 1 root root 57 May 31 20:20 cfg.log -rw-r--r-- 1 root root 3 May 31 20:28 cfg.time -rwxr-xr-x 1 root root 1625 May 31

shell习题-15

题目要求写个shell,看看你的Linux系统中是否有自定义用户(普通用户),若是有,一共有几个? 核心要点centos6 uid>=500 eentos7 uid>=1000 awk -F ':' '$3>=500' /etc/passwd|wc -l centos 5 6 awk -F ':' '$3>=1000' /etc/passwd|wc -l centos 7 awk -F 'release' '{print $2}' /etc/redhat-release|cut -

shell习题-22

题目要求 写一个shell脚本,通过curl -I 返回的状态码来判定所访问的网站是否正常.比如,当状态码为200时,才算正常. 参考答案 #!/bin/bash #这个脚本用来判断一个网址是否正常 #作者:猿课-阿铭 www.apelearn.com #日期:2018-11-01 url="http://www.apelearn.com/index.php" [email protected] code=`curl -I $url 2>/tmp/curl.err|head -1

shell习题-26

题目要求 写一个脚本,依次向/etc/passwd中的每个用户问好,并且说出对方的ID是什么,如: Hello, root,your UID is 0. 参考答案 #!/bin/bash #这个脚本用来问候用户 #作者:猿课-阿铭 www.apelearn.com #日期:2018-12-11 cat /etc/passwd |while read line do username=`echo $line|awk -F ':' '{print $1}'` uid=`echo $line|awk

shell习题-27

题目要求 要求:两类机器一共300多台,写个脚本自动清理这两类机器里面的日志文件.在堡垒机批量发布,也要批量发布到crontab里面. A类机器日志存放路径很统一,B类机器日志存放路径需要用匹配(因为这个目录里除了日志外,还有其他文件,不能删除.匹配的时候可用.log) A类:/opt/cloud/log/ 删除7天前的B类: /opt/cloud/instances/ 删除15天前的 要求写在一个脚本里面.不用考虑堡垒机上的操作,只需要写出shell脚本. 参考答案 #!/bin/bash #