1.find命令
格式为;find [路径] [参数]
-atime +n /-n:表示访问或执行时间大于或小于n天的文件。
-ctime +n/-n:表示写入、更改inode属性(如更改所有者、权限或者链接)的时间大于或小于n天的文件。
-mtime +n/-n:表示写入时间大于或小于n天的文件。该参数用得最多。
上例中,-mtime -3表示,mtime在3天之内的文件,单位是天。
-mtime +10表示mtime在10天以上的文件。
-mmin -10,表示mtime在10分钟内的文件。
-mtime 10,表示正好为10天。
文件的access time (即atime)是在读取文件或者执行文件时的更改的。
文件的modified time (即time)是在写入文件时随文件内容的更改而更改。
文件的change time(即ctime)是在写入文件、更改所有者、权限或者链接设置时随inode内容的更改而更改的。
其中,inode (索引节点)用来存放档案及目录的基本信息,包含时间信息、文档名、所有者以及所属组等。inode是unix操作系统的中的一种数据结构,其本质是结构体,在文件系统创建时生成,且个数有限。
df -i :查看各个分区的inode总数以及使用情况。
因此,更改文件的内容即会更改mtime和ctime,但是文件的ctime可能会在mtime为发生任何变化时更改。例如,更改了文件的权限,但是文件内容没有变化。stat命令可用来列出文件的atime、ctime和mtime。
atime不一定在访问文件夹之后修改,以为在使用ext3文件系统时,如果mount使用了noatime参数,那么就不会更新atime的信息。总之,这三个time属性值都放在了inode中。若mtime 、atime被修改,那么inode就一定会改,既然inode改了,那么ctime也跟着要改了。
-name filename:表示直接查找该文件名的文件,这个选项比较常用,示例命令如下:
-type filetype:表示通过文件类型查找文件。filetype包含了f、b、c、d、l、s等类型,示例命令如下:
2.linux文件后缀名
为了便于区分,我们习惯在定义文件名时加一个后缀名。1.sh代表它是一个脚本,2.tar.gz代表它是一个压缩包,my.cnf代表它是一个压缩文件。早起的unix系统文件名最多允许14个字符,而新的unix或者linux系统中,文件名最长可达255字符。