Variável de teste em uma instrução de caso bash

0

O que eu quero é simplesmente fazer algo se a primeira variável do script estiver vazia, em uma declaração de caso.

Infelizmente, passei um certo tempo procurando a solução, mas não a encontrei.

Aqui está o meu código:

case $1 in 
    [[ -z $1 ]]) echo "something" ;; 
esac
    
por math 22.05.2015 / 17:11

1 resposta

2

Você não precisa do comando test ao usar case e não precisa de case ao usar test :

case $1 in 
  ("") echo "something" ;; 
esac

e:

[[ -z $1 ]] && echo "something"

ou usando o teste antigo [...] para portabilidade:

[ -z "$1" ] && echo "something"
    
por 22.05.2015 / 17:16