OS X: o BSD 'find / etc' imprime apenas '/ etc'

0

find falha ao listar o conteúdo do diretório /etc quando chamado de maneira óbvia e não tenho certeza de qual é a explicação.

find /etc mostra apenas /etc , mesmo que existam outros arquivos dentro do diretório.

$ find /etc
/etc

também

$ find /./etc
/./etc

e como root

$ sudo find /etc
/etc

No entanto, posso ver alguns arquivos dentro de /etc quando executo find /etc/.

$ find /etc/. | head
find: /etc/./cups/certs: Permission denied
/etc/.
/etc/./afpovertcp.cfg
/etc/./afpovertcp.cfg~orig
/etc/./aliases

Outros comandos, como ls , mostram o conteúdo de /etc ...

$ ls -1 /etc | head
afpovertcp.cfg
afpovertcp.cfg~orig
aliases
aliases.db

Esse comportamento é esperado para find ?

    
por Gregory Nisbet 03.02.2017 / 02:38

1 resposta

6

No OSX, /etc é um link simbólico e find não irá percorrê-lo como se fosse um diretório.

Por que vale a pena, /tmp e /var também são links simbólicos (apontando em cada caso para subdiretórios de /private ).

Você pode usar (veja POSIX find ) o -H ou -L opções para obter algo como sua intenção.

    
por 03.02.2017 / 02:43

Tags