Qual é a diferença entre locate --basename e locate --wholename no Linux?

4

Na página de manual de locate , eu li isto:

locate --basename
    Match only the base name against the specified patterns. 
    This is the opposite of --wholename.

mas eu não entendo. O que isso significa? Qual é a diferença entre locate --basename e locate --wholename ? Você pode me dar alguns exemplos simples?

    
por SWIIWII 19.07.2016 / 11:38

1 resposta

3

O nome da base é a parte última do caminho completo

/etc/default/grub
              ^
             basename

Por padrão, locate corresponde a um padrão em qualquer lugar no caminho.

Com -b (basename), ele corresponde apenas aos caminhos em que o padrão aparece na última parte do nome do caminho, o nome do arquivo ou o próprio nome do diretório.

Por exemplo, a saída de locate gimp incluiria

/etc/gimp
/etc/gimp/2.0
/etc/gimp/2.0/controllerrc

E muitos outras coisas, mas locate -b gimp encontraria

/etc/gimp

Sem incluir os subdiretórios, pois não há gimp string em seus nomes de base.

    
por Zanna 19.07.2016 / 11:47