每天在/home/face/capturepic/2017/目录下都会产生很多文件
/home/face/capturepic/2017/4/21
/home/face/capturepic/2017/4/22
希望的是每天只保留当天的文件夹,其他的文件夹删除
改写的.sh脚本如下
!/bin/bash
dir="/home/face/capturepic/2017/"
Available=`df -k | sed -n '/sda3/p' | awk '{print int($5)}'`
if [ $Available -gt ];then
echo "available less 10 "
for mou in `ls $dir`
do
tmou=date +%m
if [ $mou -lt $tmou ];then
echo "delete dir $dir$mou "
rm -rf $dir$mou
elif [ $mou -eq $tmou ];then
for day in `ls $dir$mou/`
do
today=date +%d
if [ $day -ne $today ];then
echo "delete dir $dir$tmou/$day "
rm -rf $dir$tmou/$day
fi
done
fi
done
fi

定时执行的corn文件如下(每分钟执行一次)

* * * * * ./test.sh
* * * * * ./test.sh 最好写一下脚本的绝对路径,因为最后放到crontab里面,当前路径就不同了 
最好改为如下
* * * * * /home/test.sh
还有就是脚本里面用到的一些文件之类的,最好也用绝对路径
crontab XXX.cron

直接加入定时脚本中


crontab -l
能够查看脚本是否放在了crontab里面

如果运行了,可以运行如下命令查看最近日志,如果看不到日志,说明根本没运行
root@u3-server:/home/u3/mjl# tail /var/log/cron.log
Oct :: u3-server CRON[]: (root) CMD (/home/u3/mjl/watchdog.sh)
Oct :: u3-server CRON[]: (CRON) info (No MTA installed, discarding output)
Oct :: u3-server CRON[]: (root) CMD (/home/u3/mjl/watchdog.sh)
Oct :: u3-server CRON[]: (CRON) info (No MTA installed, discarding output)
Oct :: u3-server CRON[]: (root) CMD (/home/u3/mjl/watchdog.sh)
Oct :: u3-server CRON[]: (CRON) info (No MTA installed, discarding output)
Oct :: u3-server CRON[]: (root) CMD (/home/u3/mjl/watchdog.sh)
Oct :: u3-server CRON[]: (CRON) info (No MTA installed, discarding output)
Oct :: u3-server CRON[]: (root) CMD (/home/u3/mjl/watchdog.sh)
Oct :: u3-server CRON[]: (CRON) info (No MTA installed, discarding output)
有时候/var/log/cron.log 不一定有日志
需要在cron脚本里面加入重定向日志,如
* * * * * /home/jyzbyj/mjl/watchdog/watchdog.sh >> /home/jyzbyj/mjl/watchdog/mylog.log >&

另外service cron start可以正常启动服务

一些网上的资料说 /sbin/service crond start ,我在ubuntu下面不能执行

开机的时候自动启动服务

u3@u3-server:~/mjl$ cat /etc/rc.local
#!/bin/sh -e
#
# rc.local
#
# This script is executed at the end of each multiuser runlevel.
# Make sure that the script will "exit 0" on success or any other
# value on error.
#
# In order to enable or disable this script just change the execution
# bits.
#
# By default this script does nothing.
service cron start
exit

杀死所有名称叫test的进程

kill.sh

killall test

运行在后台,并且设置为init进程的子进程,不随终端的关闭退出

start.sh

cd /home/user/test/
setsid ./test &

注意,不要放在/etc/ 等系统目录下面,可能导致没有执行权限

cron脚本在不同的用户有不同的设置,所以执行程序一定要保证能够在当前用户能执行

提示:如果你的脚本总是报错,很可能是你用了windows下面的编辑器,最好有linux的编辑器

自动删除文件脚本(Linux shell脚本)的更多相关文章

  1. 有用户及目录判断的删除文件内容的Shell脚本

    [root@localhost Qingchu]# cat Qingchu_version2.sh #!/bin/bash #描述: # 清除脚本! #作者:孤舟点点 #版本:2.0 #创建时间:-- ...

  2. Linux Shell脚本攻略

    -Linux Shell脚本攻略 总结的来说,这本书很实践性和实用性强,都是给的具体的例子,直接可以在终端操作实践,比单纯只看不动手务实多了,另外就是,这本书涵盖的内容也比较广,从文本操作到服务器管理 ...

  3. linux - 怎么自动填写有交互的shell脚本 - SegmentFault

    linux - 怎么自动填写有交互的shell脚本 - SegmentFault TCL/Expect交互式自动化测试概要 - - ITeye技术网站 expect是一种基于TCL,能与交互式程序进行 ...

  4. Linux shell 脚本攻略之统计文件的行数、单词数和字符数

    摘自:<Linux shell 脚本攻略>

  5. Linux shell 脚本攻略之创建不可修改文件

    摘自:<Linux shell 脚本攻略>

  6. Linux shell 脚本攻略之生成任意大小的文件

    摘自:<Linux shell 脚本攻略>

  7. Linux shell 脚本攻略之文件查找与文件列表

    摘自:<Linux shell 脚本攻略>

  8. Linux Shell脚本攻略 读书笔记

    Linux Shell脚本攻略 读书笔记 这是一本小书,总共253页,但内容却很丰富,书中的示例小巧而实用,对我这样总是在shell门前徘徊的人来说真是如获至宝:最有价值的当属文本处理,对这块我单独整 ...

  9. Linux Shell脚本入门--wget 命令用法详解

    Linux Shell脚本入门--wget 命令用法详解 wget是在Linux下开发的开放源代码的软件,作者是Hrvoje Niksic,后来被移植到包括Windows在内的各个平台上.它有以下功能 ...

  10. LINUX SHELL脚本攻略笔记[速查]

    Linux Shell脚本攻略笔记[速查] 资源 shell script run shell script echo printf 环境变量和变量 pgrep shell数学运算 命令状态 文件描述 ...

随机推荐

  1. Python将纳入高考?

    最近,"Python将纳入高考"的消息,狠狠地刷了朋友圈. 尽管这则消息目前还未得到官方的确认,但人们对于Python的火热关注度,还是引来众程序员热议. 虽然小编资历尚浅,但还是 ...

  2. 04.redis集群+SSM整合使用

    redis集群+SSM整合使用 首先是创建redis-cluster文件夹: 因为redis最少需要6个节点(三主三从),为了更好的理解,我这里创建了两台虚拟机(192.168.0.109 192.1 ...

  3. 基于Node的高性能MVC框架

    赶上公司去Windows化,有一大波.net站点需要转成Node.js,于是自己就顺便琢磨一个通用的Node版MVC框架. 经过几天的努力,beta版终于面世了!因为其高性能的特点,特地命名node- ...

  4. Linux积累 命令之cat和wc

    cat主要有三大功能: 1.一次显示整个文件. $ cat   filename 2.从键盘创建一个文件. $ cat  >  filename 只能创建新文件,不能编辑已有文件. 3.将几个文 ...

  5. memset的实验

      关于memset的实验 实验一:memset对char数组赋初值 #include<iostream> using namespace std; int main() { char a ...

  6. Java-----SSM(SpringMVC+Spring+mybaties)框架整合

    在进行整合之前,首先了解这个框架的作用 Mybaties: 丰富的标签库,可写动态sql,并统一的在.XML文件中编写,方便统一管理,解耦 SpringMVC: 标准的MVC思想(mode,view, ...

  7. 【004】【JVM——垃圾收集算法】

     Java虚拟机学习总结文件夹 垃圾收集算法 垃圾收集算法的实现涉及大量的程序细节,并且各个平台的虚拟机操作内存的方法又各不同样,介绍几种垃圾收集算法的思想及其发展过程. 标记-清除算法 垃圾收集 ...

  8. 使用NPOI读取Excel数据到DataTable

    如今XML文件的存储格式大行其道,可是也不是适用于全部情况,非常多单位的数据交换还是使用Excel的形式.这就使得我们须要读取Excel内的数据.载入到程序中进行处理.可是如何有效率的读取,如何使程序 ...

  9. poj 2299 Ultra-QuickSort(树状数组求逆序数+离散化)

    题目链接:http://poj.org/problem?id=2299 Description In this problem, you have to analyze a particular so ...

  10. ado 字符串变量

    这次变量主要针对 Mfc 的 Cstring 类型的变量(前面VC 链接Access 数据库 插入变量到表) 思路; 1 把cstring 类型 转为 string 2 string 转 char 数 ...