Veja só:
$ touch arquivo # criando arquivo
$ wc -c arquivo # vendo tamanho em bytes
0 arquivo
case $(wc -c arquivo) in
0*) echo "arquivo vazio" ;;
*) echo "arquivo nao vazio" ;;
esac
arquivo vazio
Explicando o case:
se o resultado do comando wc -c ... for 0 + alguma coisa , cai no
primeiro pattern do case, senão cai no seguindo. ;-)
2008/2/7 patrick <[EMAIL PROTECTED]>:
>
> Eu queria verificar é se um arquivo.txt estivesse vazio...
> Qual maneira daria de fazer com arquivo?
>
> obrigado!
>
> PaTricK
>
> Tiago Barcellos Peczenyj escreveu:
>
> >
> > Em primeiro lugar bem vindo, Patrick.
> >
> > a opção -z diz respeito ao conteudo da variavel e não ao possivel
> > significado da mesma.
> >
> > ex:
> >
> > if [ -z "${VARIAVEL_INEXISTENTE}" ] ; then
> > echo "essa variavel não possui nenhum valor;
> > else
> > echo "essa variavel TEM valor e ele eh : ${VARIAVEL_INEXISTENTE}"
> > fi
> >
> > se vc quer verificar se um diretorio está vazio, uma solução é fazer
> > um ls -a no mesmo, se ele tiver algo diferente de . e .. então ele não
> > está vazio. Outra solução seria fazer uma contagem de bytes.
> >
> > []´s T
> > 2008/2/8 patrick <[EMAIL PROTECTED]
> > <mailto:patrick_rsl%40yahoo.com.br>>:
>
> > >
> > >
> > > Eu uso esse comando para verificar se um diretorio está vazio, e quando
> > > rodo o scritp ele simplesmente passa direto, não verifica se está
> vazio.
> > > O que estaria errado nesse comando?
> > >
> > > if [ -z $DIRETORIOS ] ; then
> > > echo ""
> > > echo "ATENÇÃO: Digite os diretórios a serem sincronizados no
> > > ($BKP/$USER/diretorios.txt)"
> > > echo ""
> > > exit
> > > fi
> > >
> > > PaTricK
> > >
> >
> > --
> > Tiago B Peczenyj
> > Linux User #405772
> >
> > http://peczenyj.blogspot.com/ <http://peczenyj.blogspot.com/>
>
> > "what does not kill us makes us stronger"
> >
> >
>
>
--
Tiago B Peczenyj
Linux User #405772
http://peczenyj.blogspot.com/
"what does not kill us makes us stronger"