在的手册页上locate
,我读到了以下内容:
locate --basename
Match only the base name against the specified patterns.
This is the opposite of --wholename.
但我不明白。这是什么意思?locate --basename
和有什么区别locate --wholename
?你能给我举几个简单的例子吗?
答案1
基本名称是最后的完整路径的一部分
/etc/default/grub
^
basename
默认locate
匹配模式任何地方在路径中。
使用-b
(basename) 它仅匹配模式出现在路径名最后部分、文件名或目录名本身的路径。
例如,输出将locate gimp
包括
/etc/gimp
/etc/gimp/2.0
/etc/gimp/2.0/controllerrc
和许多其他事情,但locate -b gimp
会发现
/etc/gimp
不包括子目录,因为它们的基本名称中没有gimp
字符串。