#!/bin/bash #author:skycheng #get current date string datestr=`date +'%Y-%m-%d'` start_time=`date +'%Y-%m-%d %H:%M:%S'` #get logfile name logfile='/var/log/fs/drop_tables_'$datestr'.log' if [ ! -f $logfile ] then sudo touch $logfile fi #drop tables t…
背景: 每日构建的东西.按日期放到不同的目录里. 现在天的构建放到2015-06-01里,明天的就放到2015-06-02里,依次类推.时间久了.须要一个脚本删除N天前的目录.(本例中N=7.即删除一周前的构建). 以下直接上代码,linux版: #! /bin/bash historyDir=~/test/ today=$(date +%Y-%m-%d) echo "---------today is $today-----------" tt=`date -d last-week…
说明:  1.备份目录/home/osyunwei下面所有的文件到/home/osyunweibak里面,并且保存为osyunwei20120701.tar.gz的压缩文件格式(2012_07_01是指备份执行时当天的日期),最后只保留最近7天的备份 2.上传/home/osyunweibak里面的备份文件到远程FTP服务器上,并且只保留最近7天的备份. 3.FTP服务器:192.168.21.139 端口:21 账号:osyunwei 密码:123456 osyunweibak为备份文件存放目…
bat脚本删除7天前的文件 @echo off forfiles /p D:\logstash-1.4.2\bin\ /m *.log -d -7 /C "cmd /c del /f @path\" forfiles /p D:\logstash-1.4.2\bin\ /m *.mdmp -d -7 /C "cmd /c del /f @path\" pause forfiles: /p 指定的路径 /s 包括子目录 /m 查找的文件名掩码 /d 指定日期,有绝对日…
说明: 我这里要把MySQL数据库存放目录/var/lib/mysql下面的pw85数据库备份到/home/mysql_data里面,并且保存为mysqldata_bak_2011_11_03.tar.gz的压缩文件格式(2011_11_03是指备份执行时当天的日期),然后只保留最近7天的备份,再把备份文件通过ftp服务器上传到指定空间,并且在远程ftp服务器只保留最近7天的备份.实现步骤:1.创建保存备份文件的目录:/home/mysql_data cd /home mkdir mysql_d…
由于过多的日志很占用磁盘空间,今天经理让我写一个脚本删除多余的日志.和es索引 定时删除试根据crontab+shell脚本实现的 crontab配置目录 /var/spool/cron/ 该目录下存放的是每个用户(包括root)的crontab任务,文件名以用户名命名 /etc/cron.d/ 这个目录用来存放任何要执行的crontab文件或脚本. crontab操作步骤 Step-One : 编辑任务脚本[分目录存放][ex: backup.sh] Step-Two : 编辑定时文件[命名规…
linux是一个很能自动产生文件的系统,日志.邮件.备份等.虽然现在硬盘廉价,我们可以有很多硬盘空间供这些文件浪费,让系统定时清理一些不需要的文件很有一种爽快的事情.不用你去每天惦记着是否需要清理日志,不用每天收到硬盘空间不足的报警短信,想好好休息的话,让我们把这个事情交给机器定时去执行吧. 1.删除文件命令: find 对应目录 -mtime +天数 -name "文件名" -exec rm -rf {} \; 实例命令: find /opt/soft/log/ -mtime +30…
删除log文件简单shell脚本 经常会遇到日志把磁盘占满的情况,引起低级故障.我个人在实际工作中,尝试了如下的方法,比较简单,而且快捷有效. #!/bin/bash # /root/log_delete.sh dir_log_1="/home/log/log1" dir_log_2="/home/log/log2" dir_log_3="/home/log/log3" if [ -d "${dir_log_1}" ]; th…
Linux自动删除n天前备份Linux是一个很能自动产生文件的系统,日志.邮件.备份等.因此需要设置让系统定时清理一些不需要的文件.语句写法:     find 对应目录 -mtime +天数 -name "文件名" -exec rm -rf {} \;例子:     将/app/label/log目录下所有10天前带"."的文件删除.     find /app/label/log -mtime +10 -name "*.*" -exec rm…
#!/bin/bash MYSQLHOST="127.0.0.1" MYSQLUSER="root" MYSQLPWD="root" MYSQLPORT=" MYSQLDB="test" echo "health tables total:" > mysqlCount.txt; mysql -h$MYSQLHOST -u$MYSQLUSER -p$MYSQLPWD -P$MYSQLPORT…
编写脚本 vi delbak.sh 代码如下: #!/bin/sh location="/home/mysql/backup/" find $location -mtime +7 -type f |xargs rm -f 解释: location 是设置查找的目录--mtime +7 是设置时间为7天前(删除location指定目录下7天前的文件)-type f 查找的类型为文件 代码如下: #!/bin/sh location="/home/mysql/backup/&qu…
背景 jenkins执行去执行shell命令,其中引用了一些jenkins的变量,如${WORKSPACE}这种,因为每次执行jenkins比较慢,于是想复制脚本出来想本地调试一下,直接复制了脚本过来执行,结果又这么一句 rm -rf ${WORKSPACE}/* 用root去执行,结果就崩盘了,发现删除了系统文件和目录,当终止的时候,已经来不及了 分析 由于${WORKSPACE}不存在,就是空了的,所以命令基本上就是rm -rf /* 然后就爆炸了,哎,只能找运维帮忙修复了的 后记 1. 权…
@ echo offforfiles /p .\ /s /m 2008*.* /d -7 /c "cmd /c echo @file>>.\del.txt"forfiles /p .\ /s /m 2008*.* /d -7 /c "cmd /c del @path"pause /p 指定目录 .\为当前目录也可以指定具体目录如:forfiles /p “C:\Users\gtja\Desktop\1016” /s 递归到子目录 /m 搜索要删除的文件名…
话不多少,直接上代码: #!/bin/bash workdir=("/home/Tax_Punish_Ret/log_txt") #可填写多个路径, 用空格隔开 # 查找日志文件 for wdir in ${workdir[@]} do echo filepath is $wdir if [ $wdir = ${workdir[0]} ] ;then fileStr=`find $wdir/*.log` echo files is $fileStr else fileStr=`find…
date [-u] [-d datestr] [-s datestr] [--utc] [--universal] [--date=datestr] [--set=datestr] [--help] [--version] [+FORMAT] [MMDDhhmm[[CC]YY][.ss]] 说明 : date 可以用来显示或设定系统的日期与时间,在显示方面,使用者可以设定欲显示的格式,格式设定为一个加号后接数个标记,其中可用的标记列表如下 : 时间方面 : % : 印出 % %n : 下一行 %…
Ps:这篇文章只是为了做个分类,以后有看到比较好的时间处理命令都会列在这里,您如果有什么好的时间处理命令,可以评论中添加,我会定期查看更新,谢谢! 1.定义一个参数DATE_TODAY,用于记录当天时间: DATE_TODAY=`date -d +"now" +"%F"` 假如今天是2015年4月15日,结果:2015-04-15 DATE_TODAY=`date -d +"now" +"%Y%m%d"` 假如今天是2015年…
一.计算指定日期的前一天的日期 date -d "yesterday 20150401 " +%Y%m%d 二.如果获取当前日期的前一天        date -d "yesterday" +%Y%m%d 三.计算指定日期的前几天(例如计算20190716的前10天),如果是负数的话,则会往前数 date -d "10 day ago 20190716" +%Y%m%d   或  date -d "10 day ago 2019-07…
由于某种原因,xcode帮我按照了几千个开发和上线证书,需要删除这部分证书: #dir="/Users/Ethan/Library/MobileDevice/Provisioning Profiles/" dir="/Users/Ethan/Desktop/test/" filelist=`ls "${dir}"` #echo $filelist for filename in $filelist do PROFILE_FILE="${…
#!/bin/bashlocation=/root/rmfind $location -mtime +30 -print | xargs rm -rf //-mtime是距离上一次修改时间 -print是只显示文件 xargs是获取find查找的结果在通过rm命令删除…
#!/bin/bask # cd /tmp for a in * ;do if [ ! -s $a ] ;then #[ ! -s $a ] 文件为空返回为真 rm -rf $a fi done 测试:…
15.1 理解输入和输出 现在知道两种显示脚本输出的方法 1)在显示器屏幕上显示 2)将输出文件重定向到文件中 15.1.1 标准文件描述符 Linux系统将每个对象当做文件处理.这包括输入和数出进程. Linux用文件描述符来标识每个文件对象. 它是一个非负整数,可以唯一标识会话中打开的文件. 每个进程一次最多可以有九个文件描述符 bash shell保留的前3个文件描述符(0. 1. 2) 1.STDIN 标准输入(0) STDIN文件代表shell的标准输入. 对终端界面来说,标准输入是键…
get_task_id 脚本内容 #!/usr/bin/expect#配置登陆数据库的端口set port 22#配置登陆数据库的ip地址set oracleip 10.0.4.41#配置数据库实例名set DSN bms#配置数据库用户名set username sa#配置数据库登陆密码                                                                                                         …
1.mkdir -p /root/scripts/ 2. cd /root/scripts/ vim query.sql,代码如下: SELECT CONCAT(t.table_schema,".",t.table_name) as table_name FROM information_schema.TABLES t LEFT JOIN information_schema.TABLE_CONSTRAINTS tc ON t.table_schema = tc.table_schem…
解题思路 文件 shu 是下面这样的.220 34 50 70553 556 32 211 1 14 98 33 文件 jian是下面这样的.1082 想要得到结果是下面这样的.210 24 40 60545 548 24 131 1 12 96 31 用awk来得到想要的结果 [root@localhost study]# awk 'NR==FNR{a[NR]=$1;next}NR!=FNR{for(i=1;i<=NF;i++){$i>a[FNR]?$i=$i-a[FNR]:$i=a[FNR…
[脚本1]打印形状打印等腰三角形.直角三角形.倒直角三角形.菱形 #!/bin/bash # 等腰三角形 read -p "Please input the length: " n $n` do for ((j=$n;j>i;j--)) do echo -n " " done $i` do echo -n "* " done echo done # 倒直角三角形 read -p "Please input the length:…
本文用于记录学习和日常中使用过的shell脚本 [脚本1]打印形状 打印等腰三角形.直角三角形.倒直角三角形.菱形 #!/bin/bash # 等腰三角形 read -p "Please input the length: " n for i in `seq 1 $n` do for ((j=$n;j>i;j--)) do echo -n " " done for m in `seq 1 $i` do echo -n "* " done e…
目录 环境还原 环境创建 编写shell脚本 准备文件 创建shell脚本 执行shell脚本 进阶版 感谢 诚邀访问我的个人博客:我在马路边 更好的阅读体验点击查看原文:Shell脚本备份Mongodb数据库 原创博客,转载请注明出处 @ 项目需要对Mongodb的数据进行定期备份,以免出现什么差错难以追回,但是数据量比较大,本机硬盘不够用,还要异地备份,于是乎通过通过dump远程链接目标库,然后将数据dump到另一个位置,暂时还在执行中,如果有错误再进行修改. 环境还原 Mongodb服务器…
一.     用户管理(添加用户.切换用户.删除用户) ~                                                                                    #波浪线,代表家目录 cd ~       和           cd                                                       #快速回到家目录 id           和           whoami      …
第12章 Shell脚本编程   l  Shell命令行的执行 l  编写.改动权限和运行Shell程序的步骤 l  在Shell程序中使用參数和变量 l  表达式比較.循环结构语句和条件结构语句 l  在Shell程序中使用函数和调用其它Shell程序 12-1   Shell命令行书写规则 u  Shell命令行的书写规则 对Shell命令行基本功能的理解有助于编写更好的Shell程序,在执行Shell命令时多个命令能够在一个命令行上执行,但此时要使用分号(:)分隔命令,比如: [root@…
有时数据没有实时备份恢复那么高的安全性需求,但每天 ,或者定期备份表结构 和数据依旧是很有必要的,介绍一种方法 在归档和非归档模式均可使用的自动备份方法. 预期效果是备份用户下的数据含表结构,备份文件在dmp文件下,每天晚上1点备份, 为了防止占用物理磁盘过大,自动删除两周前的旧数据,建议养成定时做备份数据有效性 检查(用导出的文件,导入空库测试). log文件夹下存放日志 1 .制作 备份bat @echo off echo 正在备份pyc_ORACLE 数据库 ,请稍等……exp useri…