Остановите Ubuntu от отображения текста перед выключением [дубликат]

Прежде всего вы должны как можно скорее сохранить содержимое $?, потому что каждая команда запускает перезаписывать его содержимое. В вашем случае $? в операторе if является статусом выхода предыдущего echo, а не mvn.

Далее, для арифметического сравнения в bash (и sh ]), вы должны использовать -ne для не равных.

Поэтому я предлагаю:

mvn compile
status="$?"
echo "$status"
  if [ $status -ne 0 ]; then
    echo "is not 0"
  else
    echo "is 0"
  fi

Но это можно сделать более элегантно с помощью

if ! mvn compile; then
    echo "is not 0"
else
    echo "is 0"
fi
3
задан 25 February 2012 в 03:57

0 ответов

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

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