linux下find查找文件后使用xargs和exec进行删除、压缩处理。

mtime 文件内容上次修改时间

  atime 文件被读取或访问的时间

  ctime 文件状态变化时间

  mtime 和 atime 的含义都是很容易理解的,而 ctime 则需要更多的解释。由于 inode 维护着每个文件上的元数据,因此,如果与文件有关的元数据发生变化,则inode 数据也将变化。这可能是由一系列操作引起的,包括创建到文件的符号链接、更改文件权限或移动了文件等。由于在这些情况下,文件内容不会被读取或修改,因此 mtime 和 atime 不会改变,但 ctime 将发生变化。

  这些时间选项都需要与一个值 n 结合使用,指定为 -n、n 或 +n。

  复制代码代码如下:

  N * 24

  +1 表示 1 * 24 +24小时以外..

  +0 表示 0 * 24 +24小时以外

  1 表示 1 * 24 + 24 到 24 之间..

  0 表示 0 * 24 + 24 到 0 之间..

  -1 表示 0 * 24 +24 内,甚至为未来时间...

  1.当前时间24小时—当前时间(昨天-今天)

  #find . -mtime 0

  2.当前时间48小时前–当前时间24小时前(前天-昨天)

  #find . -mtime 1

  3.当前时间48小时前(2天前)

  #find . -mtime +1

  4.当前时间24小时–当前时间(昨天-今天)

  #find . -mtime -1
命令举例:
将该目录下7天以内的日志文件进行打包。
find /apps/spark/app/logs -mtime -7 -print |xargs tar cjf test.tar.gz

将该目录下7天以内的日志文件进行删除,总是保留最新的。
find /apps/spark/app/logs  -mtime -7 -print |xargs rm -rf
或者使用exec实现:
find /apps/spark/app/logs  -mtime -7 -exec rm {} \;

原文地址:http://blog.51cto.com/13528748/2119490

时间: 2024-10-09 17:29:57

linux下find查找文件后使用xargs和exec进行删除、压缩处理。的相关文章

Linux下相关查找文件命令(find locate which whereis type)

以下内容摘自:http://blog.csdn.net/jessica1201/article/details/8139249 标注的内容为自己的补充: 我们经常需要在系统中查找一个文件,那么在linux系统中我们如何准确高效的确定一个文件在系统中的具体位置呢?一下我总结了在linux系统中用于查找文件的几个命令. 1.find命令 find是最常用也是最强大的查找命令,它可以查找任何类型的文件. find命令的一般格式为:find <指定目录><指定条件><指定动作>

linux下怎么查找文件

linux下通常用whereis或者是locate来检查文件,如果实在找不到,才使用find.为什么find不能作为优先考虑的命令? 因为whereis与locate是利用数据库来查找数据,所以相当快速,而且并没有实际查询硬盘,比较省时间. whereis [-bmsu] 文件或目录名 -b :只找二进制格式的文件 -m :只找在说明文件manual路径下的文件 -s :只找source源文件 -u :查找不在上述三个选项中的其他特殊文件 find是很强大的命令,但是花费的时间很多,因为find

linux下快速查找文件

在使用linux时,经常需要进行文件查找.其中查找的命令主要有find和grep.两个命令是有区的. 区别:(1)find命令是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访问时间,修改时间等. (2)grep是根据文件的内容进行查找,会对文件的每一行按照给定的模式(patter)进行匹配查找. (3)which       查看可执行文件的位置 ,只有设置了环境变量的程序才可以用 (4)whereis    寻找特定文件,只能用于查找二进制文件.源代码文件和man手册

Linux下svn提交文件后自动同步更新到网站目录

有时,对于多文件需要上传到服务器的时候将会很麻烦,但是如果使用svn的钩子脚本就容易实现本地提交svn后,自动同步代码文件到远程服务器的网站目录下,而不必手动上传了. 首先,在网站目录下checkout代码,例如我的目录是/data/www/test svn co https://127.0.0.1/test/trunk//data/www/test/ 注意,这是因为有时我会在服务器上直接修改代码,所以用checkout,如果不需要,可以用export,此指令不带.svn版本文件. 迁出代码后,

linux下的find文件查找命令与grep文件内容查找命令

linux下的find文件查找命令与grep文件内容查找命令 在使用linux时,经常需要进行文件查找.其中查找的命令主要有find和grep.两个命令是有区的. 区别:(1)find命令是根据文件的属性进行查找,如文件名,文件大小,所有者,所属组,是否为空,访问时间,修改时间等. (2)grep是根据文件的内容进行查找,会对文件的每一行按照给定的模式(patter)进行匹配查找. 一.find命令 基本格式:find  path expression 1.按照文件名查找 (1)find / -

linux下的查找命令

whereis <程序名称> 查找软件的安装路径 -b 只查找二进制文件 -m 只查找帮助文件 -s 只查找源代码 -u 排除指定类型文件 -f 只显示文件名 -B <目录> 在指定目录下查找二进制文件 -M <目录> 在指定目录下查找帮助文件 -S <目录> 在指定目录下查找源代码 locate <文件名称> 在文件索引数据库中搜索文件 -d <数据库路径> 搜索指定数据库 updatedb 更新文件索引数据库 find [路径]

Linux下 批量替换文件内容方法和odoo替换谷歌字体

#odoo#用中科院CDN解决odoo用到google字体速度慢问ti Linux下批量替换文件内容方法 http://www.cnblogs.com/fjping0606/p/4428850.html 1:查找find . -type f -name "*.html"|xargs grep 'yourstring' 2:查找并替换find -name '要查找的文件名' | xargs perl -pi -e 's|被替换的字符串|替换后的字符串|g' perl -pi -e在Per

linux下SVN忽略文件/文件夹的方法

linux下SVN忽略文件/文件夹的方法 假设想忽略文件temp 1. cd到temp所在的目录下: 2. svn propedit svn:ignore . 注意:请别漏掉最后的点(.表示当前目录),如果报错请看下面 3. 打开的文件就是忽略列表文件了(默认是空的),每一行是一项,在该文件中输入temp,保存退出 4. svn st查看状态,temp的?状态已经消除了 如果在svn propedit svn:ignore .时报错:svn: None of the environment va

linux下批量查找/替换文本内容

一般在本地电脑上批量替换文本有许多工具可以做到,比如sublime text ,但大多服务器上都是无图形界面的,为此收集了几条针对linux命令行 实现批量替换文本内容的命令: 1.批量查找某个目下文件的包含的内容,例如: #   grep -rn "要找查找的文本" ./ 2.批量查找并替换文件内容. #   sed -i "s/要找查找的文本/替换后的文本/g" `grep -rl "要找查找的文本" ./` linux下批量查找/替换文本内