与‘find’有关的日志

关于find中的atime、ctime、mtime的区别

admin 发表于 Linux 分类,标签: , , ,
0

这几天碰到的一个面试题。

find用法:
 
  -atime n
              File was last accessed n*24 hours ago.  访问(读取文件或执行文件)
      
 -ctime n
              File’s status was last changed n*24 hours ago.  写入修改 更改属主

 -mtime n
              File’s  data was last modified n*24 hours ago.  写入修改
 
 -amin n
              File was last accessed n minutes ago.这是按分钟来算的一般不用
 -cmin n
              File’s status was last changed n minutes ago.

关于+n还是-n

        +n     for greater than n,  #N天以外的,N天前的

        -n     for less than n,     #N天以内的

        n      for exactly n.     #正好的

例子:
-bash-3.2$ ll
total 24
-rw-r–r– 1 wss8848 member    6 2010-07-13 20:58 1.txt
-rw-r–r– 1 wss8848 member   63 2010-07-11 21:08 awk.txt
-rwxr–r– 1 wss8848 member  160 2010-07-04 00:00 if.sh
-bash-3.2$ find -atime +8
./if.sh
-bash-3.2$ date
Tue Jul 13 21:31:04 CST 2010
-bash-3.2$

Linux学习笔记之find命令

admin 发表于 Linux 分类,标签: , , ,
0

1.如果想在当前目录查找文件名以两个小写字母开头,跟着是两个数字,最后是*.txt的文件,下面的命令就能够返回名为ax37.txt的文件:
  $ find . -name  “[a-z][a-z][0--9][0--9].txt” -print

2.想要在当前目录及子目录中查找所有的‘*.txt’文件,可以用:
  $ find . -name  “*.txt” -print

3.想要查找txt后缀,并且权限644的文件
  $ find ~ -name “*.txt” -perm 644 -print

4.在$HOME目录中查找文件属主为dave的文件,可以用:
  $ find ~ -user  dave -print

5.希望在系统根目录下查找更改时间在5日以内的文件,可以用:
  $ find/-mtime -5 -print
 
6.为了在/var/adm目录下查找更改时间在3日以前的文件,可以用:
  $ find /var/adm  -mtime +3 -print   【4、5是碰到的面试题,可惜那时不懂】

7.如果要在/etc目录下查找所有的目录,可以用:
  $find /etc -type  d -print
 
8.为了在当前目录下查找除目录以外的所有类型的文件,可以用:
  $find . ! -type  d -print

9.为了在当前目录下查找文件长度大于1M字节的文件,可以用:
  $find . -size  +1000000c -print
 
10.为了在/home/apache目录下查找文件长度恰好为100字节的文件,可以用:
  $find /home /apache  -size 100c -print

11. 下面的例子在/apps/audit目录下查找所有用户具有读、写和执行权限的文件,并收回相应的写权限:
  $ find /apps/audit  -perm -7 -print | xargs chmod o -w

find命令是一个非常优秀的工具,它可以按照用户指定的准则来匹配文件。使用exec和xargs可以使用户对所匹配到的文件执行几乎所有的命令。

=======================
修改文件时间戳
touch -t 201007042254 we.txt
touch -d 20100704 you.txt

======================

find 学习笔记 enhenced 2

查找文件并对查找的文件执行命令

Command must end with Space\;命令必须以空格加\;结束

find -name “*.conf” -exec cp {} {}.orig \;

查找.conf结尾的文件,并以文件名.orgi进行备份

find /tmp -ctime +3 -user joe -ok rm {} \;

删除tmp中用户joe三天前的文件

find ~ -perm +o+w -exec chmod o-w {} \;

去掉可写文件写权限