Linux系统经常使用命令(四)

查找:数据库


locate 关键字spa

注意: 此命令须要预先创建数据库,数据库默认一天更新一次。因此若是刚刚创建的新文件,通常是不会被locate到的。.net

若是须要用locate查找刚刚创建的新文件,须要更新数据库——更新数据库须要用命令updatedb索引

另外,locate命令搜索的是整个系统下的关键字。
get


find 查找位置 查找参数date

查找位置:目录名称搜索

若是是整个目录文件,则用/遍历

若是是当前目录文件,则用.权限


查找参数:
下载

find . -name *关键字*

find / -name *.后缀名

find / -perm 777    注意:777实际上是16禁止数,二进制为011101110111,表明文件权限。

find / -type d 

            d 目录

            l 连接

find . -name "*a" -exec ls -l {} \;

显示全部以a开头的文件的详细信息。红色部分为固定格式。


[neil@localhost  ~]$ find -name "kd"

[neil@localhost  ~]$ find -name "kd*"

./下载/kd05.ppt.gz

[neil@localhost  ~]$ ^C

[neil@localhost  ~]$ find . -name "kd*"

./下载/kd05.ppt.gz

[neil@localhost  ~]$


find命令搜索的是名字参数是通配符,而不是关键字,因此之输入“kd”没法获得含有“kd”串的文件。

在不输入查找位置的状况下,应该是查找了整个系统目录,第二次输入的命令在获得了一条记录以后一直在运行为中止。

在Ctrl+C结束以后,加入当前位置符号“.”,迅速获得结果并完成结束。


[neil@localhost  ~]$ find . -name "kd*" -exec ls -l {} \;

-rw-rw-r--. 1 neil neil 2537229 10月 19 16:54 ./下载/kd05.ppt.gz

[neil@localhost  ~]$ find . -name "kd*" -exec touch {} \;

[neil@localhost  ~]$ find . -name "kd*" -exec ls -l {} \;

-rw-rw-r--. 1 neil neil 2537229 1月  18 14:20 ./下载/kd05.ppt.gz


上面分别实验了find与ls -l、touch两条命令分别结合。

后先将kd开头的文件显示详细信息,注意其文件创建更新时间。

以后将kd开头的文件进行更新。

最后再次将kd开头的文件显示详细信息,注意其文件创建更新时间。发现先后时间已经不一样了,说明第二个命令也是有效的。以此类推,咱们之后还能够将find与rm等命令结合使用。


find

-name

-perm

-user 查找某用户的文件

 -group

-ctime

-type

-size

——————————————————————————————————————————————

find命令比locate命令速度要慢。缘由就死locate是遍历的数据库,至关于遍历文件索引,因此快速;可是updatedb是须要一些时间的。

find命令就是通常的遍历文件系统,因此稍慢些。

相关文章
相关标签/搜索