Problema resolvido, muito obrigada a todos.
Douglas, o mestrado vai bem, já tou na reta final, mas quelquer dúvida é só
entrar em contato. Seu script extrai o que eu quero, mas tá em loop.
Acho que não expliquei com clareza o que eu quero, mas o Cistian e o Marcio
conseguiram entender, valeu! :)
Bom dia Lista,
Estou com um problema no if.
Montei um if assim:
if [ -f /emails/*-teste3.com.br.conf ] ; then echo existe; else echo nao; fi
Se existe apenas um arquivo no diretório funciona. Quando existe mais
arquivos da erro de too many arguments.
Dentro do diretório existe arquivos nessa for
Ola Graciela
Siga este guia:
http://aurelio.net/sed/sed-HOWTO/sed-HOWTO-4.html
Vejamos
/>.*/{N;s/.*\n\(...\).*/\1/p} pode ser lido como
/>.*/{comando1;comando2;...;comandoN}
ou seja, na ocorrencia da expressão '>.*' execute os comandos
limitados por { e } - esta expressão significa o sinal de
Se a sua condição é basicamente saber se o diretório está vazio ou
populado, você pode fazer algo assim:
if [ "$(ls -A /emails)" ]
then
echo "Tem email"
else
echo "Ta vazio"
fi
[]'s
Eri Ramos Bastos
2010/3/15 Alexandre Gorges :
> Bom dia Lista,
>
> Estou com um problema no if.
> Montei um
Talvez algo assim
while var in $(ls -l) do; if [ var == *"-teste3.com.br.conf" ]; then echo
existe o arquivo $var ; else echo nao existe
Em 15 de março de 2010 10:53, Thiago Diniz da Silveira <
thiagods...@gmail.com> escreveu:
> Nesse caso ele está fazendo essa verificação pelo que eu acho:
>
>
Nesse caso ele está fazendo essa verificação pelo que eu acho:
if [ -f /emails/alo-teste3.com.br.conf /emails/asa2-teste3.com.br.conf
/emails/edson-teste3.com.br.conf ]; then echo exite...
Mas não sei como podes fazer de outro.. na verdade não to conseguindo pensar
em nada.
Em 15 de março d
Pode começar a usar o find
find /emails -name '*-teste3.com.br.conf' -type f -print
Agora o que vc quer saber?
A quantidade vc manda pra um pipe com wc -l
E por ai vai...
2010/3/15 Alexandre Gorges
>
>
> Bom dia Lista,
>
> Estou com um problema no if.
> Montei um if assim:
>
> if [ -f /emails/
Bom dia Alexandre.
Acredito não ser possível fazer o teste condicional da forma que você está
querendo. Pois o "*" (asterisco) está colocando todos os arquivos existentes
como argumentos para o teste condicional, causando assim um erro de sintaxe.
Uma forma simples que resolveria o seu problem
Obrigado a todos pelas sugestões. Usei a dica do Eri Ramos Bastos. Deu certo
!
[]'s
Alexandre Gorges
http://www.google.com.br/profiles/algorges
MSN/Gtalk/iCHAT/Skype/Jabber: algor...@gmail.com
ICQ: 2031408
From: felipe_rmaia
Reply-To: Lista Shell Script
Date: Mon, 15 Mar 2010 14:16:47 -000
Opa,
Nesse diretório pode existir arquivos com de outros dominios
Monte o if como sua sugestão. Funcionou. Obrigado
if [ "$(ls -1 /emails/*-teste3.com.br.conf)" ]; then echo existe; else echo
nao; fi
[]'s
Alexandre Gorges
http://www.google.com.br/profiles/algorges
MSN/Gtalk/iCHAT/Skype/Jabber
Usa um ls -lrt |wc -l para contar as linhas por exemplo. Se for maior ou igual
a 1 vc resolveu o problema. Acho mais simples e rapido.
Abs,
Alicino de Moura Filho
alic...@gmail.com
Campinas-SP
enviado de meu celular
- Mensagem Original -
De: Alexandre Gorges
Enviada: segunda-feira, 15
Oi Alexandre,
Eu colocaria redirecionamento de erro por se não houver nenhum arquivo dá um
erro de script.
if [ "$(ls -1 /emails/*-teste3.com.br.conf)" ]; then echo existe; else echo
nao e da erro"; fi
if [ "$(ls -1 /emails/*-teste3.com.br.conf 2>/dev/null)" ]; then echo
existe; else echo nao sem
Valeu Edinho, já alterei aqui.
[]'s
Alexandre Gorges
http://www.google.com.br/profiles/algorges
MSN/Gtalk/iCHAT/Skype/Jabber: algor...@gmail.com
ICQ: 2031408
From: Edinho Almeida
Reply-To: Lista Shell Script
Date: Mon, 15 Mar 2010 12:07:31 -0300
To: Lista Shell Script
Subject: Re: [shell-
Talvez de para fazer assim
variavel=`ls -A /emails/ | wc -l`; if [ "$variavel" = "1" ]; then
> echo "1 arquivo"
> else
> echo "mais de 1 arquivo"
> fi
mais de 1 arquivo
Em 15 de março de 2010 11:17, Tiago Peczenyj escreveu:
> Pode começar a usar o find
>
> find /emails -name '*-teste3.com.
14 matches
Mail list logo