Post

零散的脚本

开发 sh 脚本

杀死进程

kill.sh

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#!/bin/sh
#根据进程名杀死进程
if [ $# -lt 1 ]
then
  echo "缺少参数:procedure_name"
  exit 1
fi

PROCESS=`ps -ef|grep $1|grep -v grep|grep -v PPID|awk '{ print $2}'`
for i in $PROCESS
do
  echo "Kill the $1 process [ $i ]"
  kill -9 $i
done

定时执行脚本

编写脚本

编写一个脚本文件,使脚本可以执行备份命令。 例如,将文件目录 /home/backups/balalala 备份到/home目录下,并压缩。

  1. 创建脚本 命令格式: touch 路径/文件名.sh 例如: 输入命令:touch /home/backup.sh

  2. 写入命令 首先进入脚本:vi 命令 vi /home/backup.sh 在脚本内写入:

1
2
3
4
5
6
7
8
9
10
11
12
#!/bin/sh
mkdir /home/beifen
#创建一个临时文件(要保存备份的路径)
cp -r /home/backups/balalala  /home/beifen
#数据存在backups目录下,备份到beifen目录下,所以先将数据拷过来
tar -zcPvf /home/backup$(date +%Y%m%d).tar.gz /home/beifen
 #将数据所在文件夹beifen打包
rm -rf /home/beifen/
 #删除临时文件内容

find ./ -mtime +30 -name "*.tar.gz" -exec rm -rf {} \;
#删除改文件夹下超过30天的文件

3. 执行脚本文件 直接手动执行脚本文件。 命令格式:sh 路径/文件名.sh 例如:sh /home/backup.sh

设置定时执行本脚本

例如:设置脚本每 7 天执行一次。

  1. 安装 crond 如果没有安装 crond 服务就先装上服务。 检查服务状态:service crond status

  2. 修改 crontab 内容 输入命令:crontab –e 进入后继续输入命令:0 0 /7 * /home/backup.sh 设置为每 7 天执行一次脚本文件 然后,保存退出:wq

sh 脚本前面五个字段分别表示分钟(0-59)、小时(0-23)、日(1-31)、月(0-12)、星期几(0-6)后面的为脚本所在目录

This post is licensed under CC BY 4.0 by the author.