Capturar retorno de "ls -l" [RESOLVIDO]

1. Capturar retorno de "ls -l" [RESOLVIDO]

Cleber Tadeu da Costa Correia
clebertadeu

(usa Debian)

Enviado em 30/09/2011 - 09:59h

olá comunidade VOL sou novato, preciso saber de uma forma de capturar o retorno do comando: ls -l | wc -l que jogue para uma variável para poder tratar. Se existir retorno então vou excluir os registros. Obrigado a todos e aguardo retorno!


  


2. MELHOR RESPOSTA

Alexandre Gonçalves Monteiro da Silva
alexandregms

(usa Ubuntu)

Enviado em 01/10/2011 - 22:25h

As 2 respostas acima são ótimas.
Bom, pelo q entendi vc quer somar a quantidade de arquivos/diretorios de uma determinada pasta:


FILES_NUMBER=$(ls -l | wc -l)


Caso vc queira fazer uma comparação, segue uma idéia: Se o numero da variavel $NUMBER_FILES for maior que 20?


if [ $FILES_NUMBER -gt 20 ]; then

echo "A pasta contem MAIS de 20 arquivos/diretorios"

else

echo "A pasta contem MENOS de 20 arquivos/diretorios"

fi


Até mais!

3. Re: Capturar retorno de "ls -l" [RESOLVIDO]

Renato Carneiro Pacheco
renato_pacheco

(usa Debian)

Enviado em 30/09/2011 - 10:32h

Faça com o find q é bem melhor:

# find /pasta/desejada -name termodesejado -exec rm -rf "()"\;

Assim ele encontra o termo desejado e, caso encontre, apaga (nesse exemplo). Vc pode incrementar sua busca, fazendo por data d criação, modificação etc.


4. Re: Capturar retorno de "ls -l" [RESOLVIDO]

Perfil removido
removido

(usa Nenhuma)

Enviado em 30/09/2011 - 13:19h

A forma mais prática já foi sugestionada pelo nosso amigo @renato_pacheco, no caso de arquivos.

Entretanto, percebo, ao ler ser post que ainda falta sanar sua duvida de como guardar a saída de um/vários comando(s) em uma variável.

Para isso, use:

- a forma mais atual

VARIAVEL=$( [ seus comando(s) ] )


- ou ainda, a forma mais antiga

VARIAVEL=`[ comando(s) ]`


Boa sorte!






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts