Erro de script bash [fechado]

0

Eu criei este script baseado em respostas que encontrei aqui:

If [[ $(autorep -J jobname | cut -c108-110 | sed -n '/ST/!'p | sed '/^$/d' | sed -n '/_/!'p) == *ST* ]]; then
    echo "Status is Started"
fi

erro:

./stj.sh: line 1: syntax error near unexpected token 'then'
  1. O comando dentro do () funciona se eu cortar e colar no terminal, mas recebo um erro quando executo com o comando if .
por Benjie 24.08.2015 / 23:44

2 respostas

4

Você indica que disse If . Palavras-chave bash diferenciam maiúsculas de minúsculas; você deve usar if (minúsculas).

    
por 24.08.2015 / 23:54
0

Além de ter um if de capital como Scott apontou, o terminal pode exigir o término da instrução "then" (supondo que você esteja colando-o em uma linha).

Tente colar:

if [[ $(autorep -J jobname | cut -c108-110 | sed -n '/ST/!'p | sed '/^$/d' | sed -n '/_/!'p) == *ST* ]]; then echo "Status is Started"; fi

(observe o ponto e vírgula antes do fi )

    
por 25.08.2015 / 00:08