Linux基础命令---tmpwatch

简介:
tmpwatch
      删除最近一段时间没有访问的文件,时间以小时为单位,节省磁盘空间。tmpwatch递归删除给定时间未被访问的文件。通常,它用于清理用于临时保存空间(如/tmp)的目录。当更改目录时,tmpwatch对可能的争用条件非常敏感,如果检测到错误,就会退出。它不遵循它正在清理的目录中的符号链接(即使给出一个符号链接作为它的参数),它不会切换文件系统,跳过根用户的lost+found目录,只删除空目录、常规文件和符号链接。
默认情况下,tmpwatch根据文件的atime(访问时间),而不是它们的Mtime(修改时间)来确定文件的日期。如果文件在“ls-l”暗示应该删除时没有被移除,请使用“ls-u”检查它们的数据,以确定这是否解释了问题的原因。
      如果指定了--atime”,“--ctime”或者“--mtime”选项,那么删除文件的时间由他们中的最大值决定。如果“--dirmtime”选项意味着忽略目录的atime,即使使用了“—atime”选项。
      此命令的适用范围:RedHat、RHEL、Ubuntu、CentOS、SUSE、openSUSE、Fedora。

1、语法
      tmpwatch  [选项]  time  file
tmpwatch  [-u|-m|-c]  [-MUadfqstvx]  [--verbose]  [--force] [--all]  [--nodirs]  [--nosymlinks]  [--test]  [--fuser]  [--quiet]  [--atime|--mtime|--ctime]  [--dirmtime]  [--exclude path]  [--exclude-user user]  time  dirs

2、选项列表
      -u | --atime
            根据文件的atime(访问时间)做出删除文件的决定。请注意,定期更新的文件系统扫描使目录保持最近的状态。
      -m | --mtime
            根据文件的Mtime(修改时间)而不是atime做出删除文件的决定。
      -c |  -ctime
            根据文件的ctime(Inode Changing Time)而不是atime来决定删除文件;对于目录,根据mtime做出决定
      -M | --dirmtime
            根据目录的Mtime(修改时间)而不是atime作出删除目录的决定;完全忽略目录的atime
      -a | -all
            删除所有文件类型,而不仅仅是常规文件、符号链接和目录。
      -d | --nodirs
            不要尝试删除目录,即使它们是空的。
      -f | -force
            强制删除,即使root用户没有写的权利
      -l | --nosymlinks
            不删除符号链接
      -q | --quite
            只报告致命错误
      -s | --fuser
            尝试在删除文件之前使用“fuser”命令查看文件是否已打开。默认情况下未启用。在某些情况下确实有帮助,但不是全部。依赖于/sbin中安装的fuser。不支持HPUX或Solaris
      -t | --test
            不删除,只是演示要做什么
      -U | --exclude-user=user
            不删除指定所有者的文件,可以指定用户名,也可以指定用户ID
      -v | --verbose
            显示详细信息
      -x | --exclude
            跳过目录及其内部文件,如果路径不存在,则它必须是不包含符号链接的绝对路径。
      -X | --exclude-pattern=pattern
            跳过路径匹配模式;如果目录匹配模式,则其中包含的所有文件也将被跳过。模式必须匹配不包含符号链接的绝对路径。

3、实例
1)删除当前目录1小时内没有访问的文件
      [root@192 weijie]#  ls
      1.c   2.c   3.c   magic.mgc  test01  test03     wjtpflR
      1.c~  2.c~  3.c~  my.iso     test02  wj234.q1C
      You have new mail in /var/spool/mail/root
      [root@192 weijie]#  tmpwatch 1 .
      [root@192 weijie]#  ls
      1.c  1.c~  2.c
2)不删除指定用户的文件 
      [root@192 weijie]#  ll
      总用量 12
      -rwxr--r-- 1 root david 12 9月  13 16:49 1.c         //文件所有者都是root
      -rw-r--r-- 1 root david 30 9月  13 16:43 1.c~
      -rwxr--r-- 1 root root  11 9月  13 16:52 2.c
      [root@192 weijie]#  tmpwatch -U root 1 .            //不删除root用户的文件
      [root@192 weijie]#  ls
      1.c  1.c~  2.c
相关文章
|
7天前
|
监控 Linux
如何检查 Linux 内存使用量是否耗尽?这 5 个命令堪称绝了!
本文介绍了在Linux系统中检查内存使用情况的5个常用命令:`free`、`top`、`vmstat`、`pidstat` 和 `/proc/meminfo` 文件,帮助用户准确监控内存状态,确保系统稳定运行。
67 6
|
8天前
|
Linux
在 Linux 系统中,“cd”命令用于切换当前工作目录
在 Linux 系统中,“cd”命令用于切换当前工作目录。本文详细介绍了“cd”命令的基本用法和常见技巧,包括使用“.”、“..”、“~”、绝对路径和相对路径,以及快速切换到上一次工作目录等。此外,还探讨了高级技巧,如使用通配符、结合其他命令、在脚本中使用,以及实际应用案例,帮助读者提高工作效率。
34 3
|
8天前
|
监控 安全 Linux
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景
在 Linux 系统中,网络管理是重要任务。本文介绍了常用的网络命令及其适用场景,包括 ping(测试连通性)、traceroute(跟踪路由路径)、netstat(显示网络连接信息)、nmap(网络扫描)、ifconfig 和 ip(网络接口配置)。掌握这些命令有助于高效诊断和解决网络问题,保障网络稳定运行。
26 2
|
16天前
|
缓存 监控 Linux
|
19天前
|
Linux Shell 数据安全/隐私保护
|
20天前
|
域名解析 网络协议 安全
|
3天前
|
运维 监控 网络协议
运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面
本文介绍了运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面,旨在帮助读者提高工作效率。从基本的文件查看与编辑,到高级的网络配置与安全管理,这些命令是运维工作中的必备工具。
18 3
|
26天前
|
运维 监控 网络协议
|
27天前
|
监控 Linux Shell
|
8天前
|
安全 网络协议 Linux
本文详细介绍了 Linux 系统中 ping 命令的使用方法和技巧,涵盖基本用法、高级用法、实际应用案例及注意事项。
本文详细介绍了 Linux 系统中 ping 命令的使用方法和技巧,涵盖基本用法、高级用法、实际应用案例及注意事项。通过掌握 ping 命令,读者可以轻松测试网络连通性、诊断网络问题并提升网络管理能力。
30 3
下一篇
无影云桌面