[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: помогите с bash и условием



On 22.08.2013 14:28, Sergey Korobitsin wrote:
Владимир Скубриев ☫ → To Debian-russian@lists.debian.org @ Thu, Aug 22, 2013 14:23 +0400

есть команда, точнее набор команд
echo $TO_DISK_INFO | grep SERIAL_SHORT | grep -q $SERIALTO

if [ ОТРИЦАНИЕ + УСЛОВИЕ ];
then
   echo " ERROR"
   exit 3
fi

Мне необходимо условие с отрицанием и желательно чтобы все было
помещено в блок if [ ... ], т.е. в одну строку - желательно но не
обязательно.

Т.е. когда мой набор команд выполнен не успешно, то срабатывало то,
что в блоке then иначе скрипт продолжал работать дальше
echo $TO_DISK_INFO | grep SERIAL_SHORT | grep -q $SERIALTO
if [ $? -ne 0 ]; then
    echo " ERROR"
    exit 3
fi

А что в $TO_DISK_INFO? Можно оптимизировать.

TO="/dev/sdb"
SERIAL="RTF57NGH"
TO_DISK_INFO=`udevadm info --query=all -n $TO`

echo $TO_DISK_INFO | grep SERIAL_SHORT | grep -q $SERIALTO
# проверяем результат последней команды
if [ $? -ne 0 ];
then
echo " Parametr <SERIALTO> do not correspond hard drive <TO> - Exiting, beacuse we cannot delete ALL DATA ..."
  echo " ... !!! BE Careful !!! ..."
  exit 3
fi


Проверил не работает я так уже пробывал.

Результат команды проверял = 0 , через echo $?
P.S. $? - результат последней команды
Пробывал также

if [ $? -ne 1 ];
if [ ! $? -ne 1 ];

не работает.

--
С Уважением,
специалист по техническому и программному обеспечению,
системный администратор

Скубриев Владимир
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Россия, Ростовская область, г. Таганрог

тел. моб: +7 (918) 504 38 20
skype: v.skubriev
icq: 214-800-502
www: skubriev.ru


Reply to: