Teste numérico em bash: expressão inteira esperada

0

Eu criei um script simples em linguagem bash para fazer a limpeza da lixeira no Ubuntu.

aqui está o script "recycle.sh"

#!/bin/bash
PUBLIC_PATH="/home/fileserv/.recycle/Public"
##### Clean public recycle folder
if [ !$(ls $PUBLIC_PATH | wc -l) -eq 0 ]; then
     /bin/rm -R $PUBLIC_PATH/*
fi

Mas quando eu corro # ./recycle.sh Eu encontro esse erro:

./recycle.sh: line 4: [: !1: integer expression expected

Alguém pode explicar por quê? Alguma solução para dar certo?

    
por AdhiDazz 16.07.2015 / 12:30

1 resposta

1

Tente isso,

#!/bin/bash
PUBLIC_PATH="/home/fileserv/.recycle/Public"
##### Clean public recycle folder
if [[ !$(ls $PUBLIC_PATH | wc -l) -eq 0 ]]; then
    /bin/rm -R $PUBLIC_PATH/*
fi
    
por 16.07.2015 / 12:45

Tags