|
EDA365欢迎您登录!
您需要 登录 才可以下载或查看,没有帐号?注册
x
) j2 x. c* p P, r& A& u
Linux locate命令用于查找符合条件的文档,他会去保存文档和目录名称的数据库内,查找合乎范本样式条件的文档或目录。+ x: i( f. `8 z7 p
" h& h! ?9 P. T7 i一般情况我们只需要输入 locate your_file_name 即可查找指定文件。# N1 j. _- I7 v. z4 h% n8 M9 {
7 g; w# B7 L; u8 g/ x* z5 q
语法" X) L) J" ]- s$ i) @& \+ _* T
locate [-d ][--help][--version][范本样式...]( e6 ~' y$ e$ z. w; r- n$ S
参数:
- o5 T) J1 N9 g5 N
0 X) q# k8 C8 o( ]9 A% }% |" a# q-b, --basename -- 仅匹配路径名的基本名称5 b8 s5 E, n: [0 h
-c, --count -- 只输出找到的数量
8 \6 U3 C# U$ I: f- ~8 q-d, --database DBPATH -- 使用 DBPATH 指定的数据库,而不是默认数据库 /var/lib/mlocate/mlocate.db2 b- p3 O) D. D/ W% }
-e, --existing -- 仅打印当前现有文件的条目
/ c5 u& E, P( Y9 b-1 -- 如果 是 1.则启动安全模式。在安全模式下,使用者不会看到权限无法看到 的档案。这会始速度减慢,因为 locate 必须至实际的档案系统中取得档案的 权限资料。* P! B. e2 d! j3 e: L: C6 Z
-0, --null -- 在输出上带有NUL的单独条目# J' f/ k1 \" F9 |0 p+ a) n
-S, --statistics -- 不搜索条目,打印有关每个数据库的统计信息
- u3 Y3 s( j4 J$ X4 a0 q-q -- 安静模式,不会显示任何错误讯息。! q4 t( Q6 D7 G
-P, --nofollow, -H -- 检查文件存在时不要遵循尾随的符号链接
8 b- a' a+ W& \2 J4 r-l, --limit, -n LIMIT -- 将输出(或计数)限制为LIMIT个条目
7 N( x$ Q/ w" V( T: s4 E9 E-n -- 至多显示 n个输出。" g! V! q6 }1 t. m8 u
-m, --mmap -- 被忽略,为了向后兼容
! y* x! Y/ C1 `* s9 I# I' E-r, --regexp REGEXP -- 使用基本正则表达式
9 \7 {9 k: q8 R5 c6 N2 [--regex -- 使用扩展正则表达式2 _! r" T: E5 S
-q, --quiet -- 安静模式,不会显示任何错误讯息; B3 }2 i( @8 w! c4 O
-s, --stdio -- 被忽略,为了向后兼容
( D0 f. j% L' a3 h. _-o -- 指定资料库存的名称。
) t$ t: o, y2 t2 Z% u$ S/ }-h, --help -- 显示帮助
! k& {8 o8 j) K-i, --ignore-case -- 忽略大小写
6 F6 N3 D a. X+ {1 D7 g, k-V, --version -- 显示版本信息
0 A L9 P# r0 [ h! Y8 S$ P实例1 u& ?, \* p/ q( _& z' k* I
查找 passwd 文件,输入以下命令:
+ W0 _ b. d6 a C! l' Z- S! O; w
9 p/ x5 o ~5 s& k1 r6 Q! v$ o! C$ flocate passwd
1 C' \5 i% e" e& N) w& s搜索 etc 目录下所有以 sh 开头的文件 :
) V5 U/ w: B3 }: _3 F( y2 [6 l+ S4 S% H! W* K+ g
locate /etc/sh4 ]: |8 R. m2 s4 X$ ?* Y& M; K, m
忽略大小写搜索当前用户目录下所有以 r 开头的文件 :
- w' J1 c, N" h! W5 _# |7 o- g1 J5 _2 g! I: J
locate -i ~/r
5 \) D( }, o6 T1 q8 M' W附加说明2 a$ ~6 ~; D' D+ n$ A
locate 与 find 不同: find 是去硬盘找,locate 只在 /var/lib/slocate 资料库中找。& A; E- ~/ {8 Q4 T' N% o, o9 O* r: e
, ?- _! |/ N) g: l" E
locate 的速度比 find 快,它并不是真的查找,而是查数据库,一般文件数据库在 /var/lib/slocate/slocate.db 中,所以 locate 的查找并不是实时的,而是以数据库的更新为准,一般是系统自己维护,也可以手工升级数据库 ,命令为:# V" [; J/ U: _% J; s6 z8 d
7 L" d0 B$ m* U! O3 q$ Oupdatedb! ^% n# R' _! i; ?) C* Z
默认情况下 updatedb 每天执行一次。 |
|