locate 命令

前几天看到一个命令locate很好用,而且看起来很快。了解了下发现,这个命令很牛逼。man一下就发现,这个命令不是搜索文件系统,而是从数据库里搜索。数据库由updatedb命令来维护,有一个或者多个。

既然是搜索,第一个问题就是正则是否支持,locate支持。第二个问题是通配符(globbing)是否支持,locate也支持。而且要是没有通配字符,那么pattern 就相当于是*pattern*

既然是从数据库里查找,那么,就有几个问题需要注意,第一,它并不保证搜到的文件一定存在。第二,搜不到的文件也不一定代表不存在。以上两点都是因为和updatedb的更新周期相关。

如果没有找到或者查找的过程中出现致命错误,locate的返回值是1, 看来以后写脚本的时候也可以用这种规范,如果没有异常,成功找到匹配项,则返回值是0。

当然如果你要检查文件是否存在,那么也是可以的,需要加上-e选项。

一个概念basename,应该是指一个文件的文件名字。不包含路径。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值