синтаксическая ошибка в условном выражении со сценарием удара

Я работаю ниже сценария:

status="UNKNOWN"
while [[ "$status" != "OUTPUT"]]; do
    echo "Checking
    status of job $jobid" status=$(zowe zos-jobs view job-status-by-jobid "$jobid" --rff status --rft string)
    echo "Current status is $status"
    sleep 5s
done;

все время я получаю ошибки как: синтаксическая ошибка в условном выражении: неожиданный маркер'';

Я попробовал, выделяют комбинаций для решения этой проблемы, но каждый раз я получаю различную ошибку.

PS: Я работаю на PowerShell окон

0
задан 20 February 2020 в 10:49

1 ответ

Когда я пишу сценарии удара, я использую shellcheck проверять, если существуют какие-либо синтаксические ошибки и т.д. Можно или установить его через apt-get install shellcheck или Вы используете shellcheck веб-сайт.

Я вставил Ваш сценарий там, и он дает следующий вывод:

Line 2:
while [[ "$status" != "OUTPUT"]]; do
^-- SC1009: The mentioned syntax error was in this while loop.
      ^-- SC1073: Couldn't parse this test expression. Fix to allow more checks.
                                ^-- SC1020: You need a space before the ]].
                                ^-- SC1072: Missing space before ]. Fix any mentioned problems and try again.

Попытайтесь зафиксировать упомянутый материал от вывода. Честно говоря, я не уверен, работает ли shellcheck на PowerShell точно так же, как для удара. Но это, вероятно, стоит попытки.

1
ответ дан 20 February 2020 в 22:49

Другие вопросы по тегам:

Похожие вопросы: