[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [shell-script] arquivo - checar tamanho
From: |
Tiago Barcellos Peczenyj |
Subject: |
Re: [shell-script] arquivo - checar tamanho |
Date: |
Tue, 13 Mar 2007 08:42:33 -0300 |
Celso
existem outras alternativas para verificar o tamanho do arquivo como o
wc -c
du
ls -s1 (cujo tamanho fica na primeira coluna, super pratico)
o proprio comando find pode mostrar o nome do arquivo se vc usar a opção
-size +tamanho
ex
find ./arquivo -size +3000c # com 3 mil bytes ou mais
./arquivo # se encontrar ele mostra
entretanto não dá para testar a variavel $? do find para fazer um if do tipo
comando || ação
mas vc pode fazer algo do tipo:
find ./arquivo -size +3000c | xargs cp /dev/null
o que isso faz? se o arquivo for encontrado, ele será passado para o xargs
que, por sua vez, 'manda' pro comando
cp
cp /dev/null o_que_vier_do_xargs
se vier o nome do arquivo (o que significa que o tamanho é maior que o
especificado), pimba, o conteudo é apagado (ou melhor, substituidp pelo
conteudo do /dev/null, isto é, um EOF). se não vier, o cp vai acusar um
erro.
para deixar mais 'completo' podes fazer assim:
find ./xxx.log -size +3000c | xargs cp -u /dev/null 2>&- || echo 'arquivo
pequeno demais'
Agora... vc precisa mesmo comparar o tamanho para limpar o arquivo? vc
poderia simplesmente limpar a cada 2 horas... ;-)
On 3/12/07, Celso Viana <address@hidden> wrote:
>
> Em 12/03/07, Julio C. Neves <address@hidden<julio.neves%40gmail.com>>
> escreveu:
>
> >
> >
> >
> >
> >
> >
> > Fala Wagner,
> > vc pode colocar um daemon Shell no ar com o cmd nohup e em seguida dar
> > logout. O nohup inicializa um processo independente do terminal e qdo vc
> dá
> > logout, ele é assumido como filho do init, isto é, seu PPID passa a ser
> 1.
> >
> > Realmente é muito pouca coisa que não dá para fazer em Shell... :)
> >
> > Abração,
> > Julio
> > :wq
> >
> > Em 12/03/07, Wagner Brasileiro Cardoso <
> address@hidden<wagnerbrasileirocardoso%40yahoo.com.br>
> >
> > escreveu:
> > >
> > > Creio que seja usando o Cron, para faze rum daemon teria que ir para C
> e
> > > se
> > > se não fizer bem feito sentará a máquina.
> > >
> > > Wagner Brasileiro
> > > -----Mensagem original-----
> > > De:
> > > address@hidden<shell-script%40yahoogrupos.com.br><shell-script%40yahoogrupos.
> com.br>
> > > [mailto:address@hidden<shell-script%40yahoogrupos.com.br>
> <shell-script%40yahoogrupos.com.br>]Em
> > > nome de Celso Viana
> > > Enviada em: segunda-feira, 12 de março de 2007 11:44
> > > Para: Shell
> > > Assunto: [shell-script] arquivo - checar tamanho
> > >
> > > All,
> > >
> > > Preciso, de 2 em 2 horas, checar se um arquivo atingiu determinado
> > > tamanho e se sim, zerar o mesmo; qual a melhor opção: um daemon ou
> > > deixar no cron (ou seria na cron)?
> > >
> > > Thanks
> > >
> > > --
> > > Celso Vianna
> > > BSD User: 51318
> > > http://www.bsdcounter.org
> > >
> > > 63 8404-8559
> > > Palmas/TO
> > >
> > > [As partes desta mensagem que não continham texto foram removidas]
> > >
> > >
> > >
> >
> > [As partes desta mensagem que não continham texto foram removidas]
> >
> >
>
> Ae mestre Julio,
>
> Poderia dar um exemplo de como fazer o daemon com o nohup?
>
> tô usando o comando ls -l |cut -d" " -f8 para pegar o tamanho do arquivo;
>
> --
> Celso Vianna
> BSD User: 51318
> http://www.bsdcounter.org
>
> 63 8404-8559
> Palmas/TO
>
>
>
--
Tiago B Peczenyj
Linux User #405772
# cd /pub
# more beer
[As partes desta mensagem que não continham texto foram removidas]