那能否手动更新数据库哪?当然可以啊!更新
locate
数据库的方法非常简单,直½输入『
updatedb
就可以了!
updatedb
指令会去读取
/etc/updatedb.conf
这个配置文件的设定,然后再去硬盘里面½行
搜寻文件名的动作,
最后就更新整个数据库文件啰!因为
updatedb
会去搜寻硬盘,所以当你执行
updatedb
时,可能会等待数分钟的时间喔!
.
updatedb
:根据
/etc/updatedb.conf
的设定去搜寻系统硬盘内的文件名,并更新
/var/lib/mlocate
内的数据库
文件;
.
locate
:依据
/var/lib/mlocate
内的数据库记载,找出用户输入的关键词文件名。
.
find
[root@study ~]#
find [PATH] [option] [action]
选项
参数
1.
时间
选项
:共有
-
atime,
-
ctime
-
mtime
,以
-
mtime
-
mtime n
n
为数
字,意
义为
n
天之前的『一天之
』被更
动过内
容的
文件
-
mtime +n
:列出在
n
天之前
(
不含
n
天本身
)
被更
动过内
容的
文件
名;
-
mtime
-
n
:列出在
n
天之
(
n
天本身
)
被更
动过内
容的
文件
名。
-
newer file
file
存在的
文件
,列出比
file
要新的
文件
范例一:
½过
去系
上面
24
时内
有更
动过内
(mtime)
文件
列出
[root@study ~]#
find /
-
mtime 0
#
0
是重
0
代表目前的
时间
,所以,
从现
始到
24
前,
#
变动过内
容的
文件
被列出
!那如果是三天前的
24
时内
# find /
-
mtime 3
变动过
文件
都被列出的意思!
范例二:
/etc
底下的
文件
,如果
文件
日期比
/etc/passwd
新就列出
[root@study ~]#
find /etc
-
newer /etc/passwd
#
-
newer
用在分辨
两个
文件
的新
旧关
系是很有用的!
时间参数真是挺有意思的!我们现在知道
atime, ctime
mtime
的意义,如果你想要找出一天内被
更动过的文件名,
可以使用上述范例一的作法。但如果我想要找出『
4
天内被更动过的文件档名』
呢?那可以使用『
find /var -mtime -4
』。那如果是『
4
天前的那一天』就用『
find /var -mtime 4
』。
有没有加上『
+, -
』差别很大喔!我们可以用简单的图示来说明一下:
6.5.1
find
相关的时间参数意义
图中最右边为目前的时间,越往左边则代表越早之前的时间轴啦。由图
6.5.1
我们可以清楚的知道:
.
+4
代表大于等于
5
天前的檔名:
ex> find /var -mtime +4
.
-4
代表小于等于
4
天内的文件档名:
ex> find /var -mtime -4