comando para diferenciar arquivo de diretorio

Iniciado por roberto gil, 30 de Dezembro de 2009, 12:50

tópico anterior - próximo tópico

roberto gil

gostaria de saber qual o comando para diferenciar arquivos de diretórios no terminal. Obrigado

Obrigado pelas repostas
resolvido

jeflui

Então tem o comando file que diz qual o tipo de arquivo.
Exemplo:
$ file teste
teste/: directory
Se você quiser listar apenas diretórios:
ls -l |grep ^d
Se quiser retornar apenas o nome dos diretórios sem permissões, dono, etc:
ls -l |grep ^d |awk '{print $8}'



Felix

você pode usar o próprio ls, veja um exemplo:
Citar
felix@midgard:~$ ls
amsn_received  bin  Desktop  Documentos  Downloads  examples.desktop  Imagens  Modelos  Músicas  Pública  Ubuntu One  Vídeos
felix@midgard:~$

Já se fizer um pouco diferente:
Citar
felix@midgard:~$ ls -l
total 48
drwx------  2 felix felix 4096 2009-12-23 09:48 amsn_received
drwxr-xr-x  2 felix felix 4096 2009-12-21 01:09 bin
drwxr-xr-x  2 felix felix 4096 2009-12-24 11:30 Desktop
drwxr-xr-x  6 felix felix 4096 2009-12-30 12:08 Documentos
drwx------  3 felix felix 4096 2009-12-30 12:07 Downloads
-rw-r--r--  1 felix felix  357 2009-12-17 23:12 examples.desktop
drwxr-xr-x  4 felix felix 4096 2009-12-23 12:53 Imagens
drwxr-xr-x  2 felix felix 4096 2009-12-17 21:19 Modelos
drwxr-xr-x  8 felix felix 4096 2009-12-28 10:20 Músicas
drwxr-xr-x  2 felix felix 4096 2009-12-17 21:19 Pública
drwxrwxr-x 10 felix felix 4096 2009-12-18 20:54 Ubuntu One
drwxr-xr-x  4 felix felix 4096 2009-12-27 14:24 Vídeos
felix@midgard:~$

Observe que na segunda opção, na primeira coluna a maioria dos itens começam com um d, isso significa que são diretórios, se iniciassem com um l seriam links e començando com - são arquivos.

Consulte o manual do comando ls digitando no terminal o comando: man ls e terá diversas outras opções.

clcampos

Mas no Ubuntu o comando ls já não vem habilitado com a opção --color (através de alias)?

Porque se for assim basta olhar pela cor, ou mesmo seguindo a dica do Tio FeNix você pode usar o comando "ls  -F" (sem aspas, lógico!), pois assim os diretórios serão apresentados com uma / no final do nome.
Cristiano/Timóteo - MG
.: Como Fazer Perguntas de Forma Inteligente :.                
Com dúvida? pesquise!

Felix

Boa Titio Cristiano, eu havia esquecido deste pequeno detalhe. Tanto que eu sempre modifico meu alias para:

alias ls='ls -lh --color=auto'

justamente para facilitar minha vida.

Mas sim o Ubuntu já vem com o --color=auto ativado por padrão, sendo assim os diretórios serão exibidos sempre com cores diferentes de arquivos e/ou links.