[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] ajudinha
From: |
Elder Marco |
Subject: |
Re: [shell-script] ajudinha |
Date: |
Wed, 2 Feb 2011 19:01:47 -0200 |
Em 2 de fevereiro de 2011 15:23, Tiago Peczenyj <> escreveu:
> De cara, quando vc precisa fazer algo rapido e as opções são complicadas ou
> pouco suportadas (como versões unix mais ortodoxas) vc pode fazer o
> seguinte:
>
> 1) grep -v é o seu amigo (é um grep invertido).
>
> ls OPCOES | grep -v db | awk ...
>
> 2) posso tentar usar extended globbing
> http://www.linuxjournal.com/content/bash-extended-globbing
>
> $ shopt -s extglob # veja no man bash se isto é suportado no seu SO
> $ ls !(*.db)
>
> 3) trave isso no awk
> awk '!/db/{ ...}'
>
> 4) use switch case + continue ou nao faça nada
>
>
Não sei se funciona no Unix, mas fora a dica dada pelo Tiago (acima), você
também poderia tentar então pegar os arquivos que terminam com a extensão
desejada a partir da saída do ls
$ ls -l | grep -E '\.d[0-9]+$'
-rw-rw-r-- 1 elder elder 0 Fev 2 18:51 file.d3
-rw-rw-r-- 1 elder elder 0 Fev 2 18:51 file.d34
-rw-rw-r-- 1 elder elder 0 Fev 2 18:51 file.d5
-rw-rw-r-- 1 elder elder 0 Fev 2 12:11 teste.d13
-rw-rw-r-- 1 elder elder 0 Fev 2 12:11 teste.d2
Aí depois tratar essas linhas. Pode-se também pegar o nome dos arquivos
completos no diretório em questão fazendo uma modificação na expressão
regular e deixando assim:
$ ls -l | grep -Eo '[^ ]+\.d[0-9]+$'
file.d3
file.d34
file.d5
teste.d13
teste.d2
E então depois pegar informações a respeito do arquivo com outros comandos.
--
Elder Marco
GNU/Linux User: #471180
"Contra o positivismo, que pára perante os fenômenos e diz: 'Há apenas
fatos', eu digo: 'Ao contrário, fatos é o que não há; há apenas
interpretações'. "(Nietzsche)
[As partes desta mensagem que não continham texto foram removidas]
- ajudinha, Márcio Ricardo Alves da Silva, 2011/02/02