Carlos Eduardo Rodrigues Diogenes escreveu:
> Consegui o filtro (na sorte) com isso
>
> ls | grep -e '[A-Z]\+[^a-z]\+'

Acho que você chegou numa regex razoável, quase lá. Essa vai pegar 
arquivos que tiverem letras maiúsculas seguida por uma coisa qualquer 
que não seja minúscula... Por exemplo, "esseARQUIVOaqui" vai dar match.
Sua descrição do problema antes era um pouco mais exigente:

[quote]
 > quero achar todos os arquivos com letras maiúsculas
 > ou todos os arquivos com letra maiúscula antes de
 > um ponto e depois do ponto pode ter qualquer combinação
 > de caracteres.
[/quote]

Acho que um grep -E "^[A-Z]+(\..*)?$" é o match que você quer. 
Destrinchando:

^[A-Z]+ começando com uma, ou mais letras maiúsculas ( já começa a casar 
README e não rEADME )
(\..*)?$ um ponto e qualquer outra coisa até o final, opcional

[EMAIL PROTECTED] ls
acconfig.h  ChangeLog     COPYING  find.sh  Makefile.am  missing        
NEWS   pkg.m4  README.win32
AUTHORS     configure.in  depcomp  INSTALL  Makefile.in  mkinstalldirs  
pkg.h  README  y

[EMAIL PROTECTED] cat find.sh
#!/bin/sh
dir="."
find $dir -maxdepth 1 -type f |
grep -E "^$dir/\.?[A-Z]+(\..*)?$" |
while read filename; do
  echo faça algo com \"$filename\"
done

[EMAIL PROTECTED] ./find.sh
faça algo com "./README"
faça algo com "./COPYING"
faça algo com "./README.win32"
faça algo com "./NEWS"
faça algo com "./INSTALL"
faça algo com "./AUTHORS"


-- 
Eliphas


---------------------------------------------------------------------
Esta lista não admite a abordagem de outras liguagens de programação, como 
perl, C etc. Quem insistir em não seguir esta regra será moderado sem prévio 
aviso.
---------------------------------------------------------------------
Sair da lista: [EMAIL PROTECTED]
---------------------------------------------------------------------
Esta lista é moderada de acordo com o previsto em 
http://www.listas-discussao.cjb.net
---------------------------------------------------------------------
Servidor Newsgroup da lista: news.gmane.org
Grupo: gmane.org.user-groups.programming.shell.brazil

 
Links do Yahoo! Grupos

<*> Para visitar o site do seu grupo na web, acesse:
    http://br.groups.yahoo.com/group/shell-script/

<*> Para sair deste grupo, envie um e-mail para:
    [EMAIL PROTECTED]

<*> O uso que você faz do Yahoo! Grupos está sujeito aos:
    http://br.yahoo.com/info/utos.html

 



Responder a