Incrementar / decrementar um número em um arquivo de um script (zsh)

2

De um script (executando várias vezes simultaneamente), gostaria de criar um arquivo como:

echo "0" > /tmp/count

Então eu gostaria de fazer três funções.

incr /tmp/count
decr /tmp/count
is_zero /tmp/count

que faz a coisa mais óbvia: incrementar o valor em / tmp / count, diminuir o valor em / tmp / count e testar se o valor é_zero.

Eu posso escrever três programas em C para fazer isso, mas espero que já exista um jeito. Alguma sugestão?

    
por Mouse.The.Lucky.Dog 14.11.2014 / 17:44

1 resposta

5
incr() {
    var=$(< "$1")
    var=$((var + 1))
    echo $var > "$1"
}

is_zero() {
    var=$(< "$1")
    [[ var -eq 0 ]]
}

decr é deixado como um exercício para o leitor.

    
por 14.11.2014 / 19:56

Tags