Linux tmpwatch命令

作为系统管理员,很多时候需要定期清理一定规则的文件,比如过期的日志,过期的归档,已备份的文件等等。

如果使用一定的匹配规则,找出这些文件,然后再传递给rm命令,其实是有点麻烦的,这时候可以试试tmpwatch。

tmpwatch

作用:

删除一定时间没有被访问的文件。

参数:

-u  按照文件的最后access时间,即最后访问时间为参考。可通过ls -lu查看。

-m  按照文件的最后modified时间,即最后修改时间为参考。可通过ls -l查看。

-c   按照文件的-ctime时间做参考,ctime更新的条件为写入、更改属主、权限。可通过ls -lc查看。

-x  /PATH  排除特定目录,即不删除该子目录里的文件。

-U  user_name  排除属于特定用户的文件,即不删除该用户的文件。

-v  显示删除过程。默认是不显示删除了什么文件,直接删除的。

--t   用于测试,并不真正删除文件,能显示出要删除文件的过程。

-d  不删除文件里的子目录,但是子目录里面的文件还是会被删除。

-f   强制删除那些root没有写权限的文件。比如root的readonly文件

参数后加时间,默认是hours。有些文章说可以使用20d表示20天,这个我也见过,但在rhel5.8中,只支持hours。应该需要看版本。

时间后是要检查的目录。可以多个目录用空格分开。

了解参数命令后,举一个典型的例子

tmpwatch -m -x /tmp/ceshi1 -U oracle -v -t  2  tmp

以上这个命令删除/tmp目录下超过两个小时没有被更改过且不属于oracle用户的文件,排除/tmp/test1子目录下的文件。显示整个删除过程,只做测试,不整整删除。

linux系统会使用这个命令来定时清理/tmp目录。

下面看下rhel5.8里的/etc/cron.daily/tmpwatch文件。

[root@localhost tmp]# cat /etc/cron.daily/tmpwatch
flags=-umc
/usr/sbin/tmpwatch "$flags" -x /tmp/.X11-unix -x /tmp/.XIM-unix \
-x /tmp/.font-unix -x /tmp/.ICE-unix -x /tmp/.Test-unix \
-X '/tmp/hsperfdata_*' 240 /tmp
/usr/sbin/tmpwatch "$flags" 720 /var/tmp
for d in /var/{cache/man,catman}/{cat?,X11R6/cat?,local/cat?}; do
if [ -d "$d" ]; then
/usr/sbin/tmpwatch "$flags" -f 720 "$d"
fi
done
[root@localhost tmp]#

这就是清理规则。懂语法了可以自己学习下。

Linux tmpwatch命令的更多相关文章

  1. Linux tmpwatch命令详解

    Linux tmpwatch命令 Linux tmpwatch命令用于删除暂存文件. 执行tmpwatch指令可删除不必要的暂存文件,您可以设置文件超期时间,单位以小时计算 用法: tmpwatch ...

  2. tmpwatch命令清除旧文件

    我们知道系统里面常常会有一些忘记删除的长时间不用而且确实没有用处的文件,如果不去处理,这些无用的文件会越来越多,浪费许多系统资源.在不知道文件名的情况下,很难去检查某一目录下到底是哪些文件长时间没有被 ...

  3. linux grep命令

    linux grep命令1.作用Linux系统中grep命令是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹 配的行打印出来.grep全称是Global Regular Expressio ...

  4. Linux常用命令(一)

    Linux常用命令 1. pwd查看当前路径(Print Working Directory)    [root@CentOS ~]# pwd/root 2. cd .. 返回上一级 .. 表示上一级 ...

  5. Linux下命令行安装weblogic10.3.6

    Linux下命令行安装weblogic10.3.6 一.安装前准备工作: 1.创建用户useradd weblogic;创建用户成功linux系统会自动创建一个和用户名相同的分组,并将该用户分到改组中 ...

  6. Linux paste命令

    Linux paste命令用于合并文件的列. paste指令会把每个文件以列对列的方式,一列列地加以合并. 语法 paste [-s][-d <间隔字符>][--help][--versi ...

  7. 20145222《信息安全系统设计基础》Linux常用命令汇总

    学习Linux时常用命令汇总 通过Ctrl+f键可在该网页搜索到你想要的命令. Linux中命令格式为:command [options] [arguments] //中括号代表是可选的,即有些命令不 ...

  8. Linux sudo 命令的应用

    .note-content { font-family: "Helvetica Neue", Arial, "Hiragino Sans GB", STHeit ...

  9. linux 基础命令与文件管理

      Linux终端介绍 Shell提示符 Bash Shell基本语法 基本命令的使用:ls.pwd.cd 查看系统和BIOS硬件时间 Linux如何获得帮助 Linux关机命令:shutdow.in ...

随机推荐

  1. C语言判别输入的东东

    梗概:现在很多用C语言写出来的作业,都是用户输入后,电脑对应操作的.其实这样有没有漏洞呢? 这样的管理系统,相信大家也不陌生,我们这里不是谈它的功能和怎样实现..我们就谈谈最后一行.[输入序号].其实 ...

  2. Unity 去除场景中的雾效果

    Windows——Lighting——Setting,然后出现下面窗口,把Other Setting下,Fog的对勾去掉就可以了.

  3. 为什么CPU缓存会分为一级缓存L1、L2、L3?有什么意义?

    https://baijiahao.baidu.com/s?id=1598811284058671259&wfr=spider&for=pc 简介:CPU缓存是CPU一个重要的组成部分 ...

  4. redis开机启动,有密码

    #!/bin/sh # chkconfig: # description: Start and Stop redis REDISPORT= EXEC=/usr/local/redis/src/redi ...

  5. 60、Docker 学习笔记(CentOS 7.1)

    #基本概念 -x86_64-minimal.tar.gz | docker import - centos:v7.mini``` 然后查看导入的镜像: ##上传镜像 >用户可以通过 docker ...

  6. 自定义Qt组件-通讯模块(P3)

    1.   半双工模式实时检测串口 ComHalfDuplex类是为了解决上位机发送控制指令和下位机发送数据会在半双工RS485总线中产生冲突引起乱码而引入的(v0.010版本引入). 解决冲突的原理主 ...

  7. [转]【无私分享:ASP.NET CORE 项目实战(第十四章)】图形验证码的实现

    本文转自:http://www.cnblogs.com/yuangang/p/6000460.html 目录索引 [无私分享:ASP.NET CORE 项目实战]目录索引 简介 很长时间没有来更新博客 ...

  8. jq中哪个方法有回调函数

    animate();id为btn的div ,位置由页面下方-100px出现,后消失 $(“#btn”).animate({ position:"absolute",bottom:& ...

  9. jQuery Validate验证框架详解(转)

    jQuery校验官网地址:http://bassistance.de/jquery-plugins/jquery-plugin-validation 一.导入js库 <script type=& ...

  10. 批量删除QQ空间说说

    第一步:用电脑打开浏览器登录你的QQ空间 第二步:点击你的说说栏目 第三步:按下电脑的F12键或者点击右上角的菜单一栏,点击开发者工具 第四步:看到右半边屏幕,找到一个叫Console的菜单,并且点击 ...