Por que o comando ls do meu diretório raiz do superusuário do Linux não mostra todos os arquivos?

5

Se eu fizer login e depois vá para o meu superusuário root:

sudo su -

Agora estou no diretório raiz. Eu posso exibir uma lista de arquivos e diretórios via ls . No entanto, alguns diretórios não parecem estar lá. Por exemplo, eu posso:

cd /svr/www

e acabam no diretório www . O diretório svr não é mostrado quando eu digito o comando ls da raiz, nem parece estar sob nenhum dos diretórios mostrados.

O que estou perdendo?

    
por UnixNewbie2012 21.09.2012 / 00:04

2 respostas

7

Após o comando sudo su - , você achará que está no diretório inicial do root /root não no diretório raiz / . Portanto, ls não mostrará /srv . Eu sugiro que você use pwd para verificar em qual pasta você está.

    
por 21.09.2012 / 01:10
2

Se você estiver no diretório / e digitar ls , não verá subdiretórios "recursivos". Você verá apenas diretórios que são filhos diretos do diretório atual. Então, para ver /srv/www , você teria que primeiro cd /srv e, em seguida, ls .

Existe uma coisa como recursiva ls ; no entanto, se você precisar dos caminhos completos, find é uma alternativa melhor.

Veja esta pergunta do StackOverflow que já tratou do assunto da listagem de arquivos / diretórios recursivos.

    
por 21.09.2012 / 00:08

Tags