Главная страница


ru.unix.bsd

 
 - RU.UNIX.BSD ------------------------------------------------------------------
 From : Igor Zemliansky                      2:5020/400     09 Apr 2004  19:56:29
 To : Eugene Grosbein
 Subject : Re: Вопрос по скрипт-программированию
 -------------------------------------------------------------------------------- 
 
 Eugene Grosbein wrote.
 
  IZ>> snmpwalk выдает мне некоторую строку:
  IZ>> host.hrDevice.hrPrinterTable.hrPrinterEntry.hrPrinterDetectedErrorStat
  IZ>> e.1 = Hex: 80 Собственно, меня интересет числовое значение в конце
  IZ>> строки. Это значение, как не сложно догадаться, в 16-тиричном виде и
  IZ>> представлет собой комплексный параметр состяния принтера. То есть
  IZ>> каждый бит (если число перевести в двоичный формат) отвечает за свой
  IZ>> параметр: мало тонера, замятие бумаги, незакрытый лоток и т.п. Вопрос:
  IZ>> как мне HEX перевести в битовую маску? То есть из этого числа
  IZ>> мне нужно узнать состояние всего нескольких битов=0/1.
 
  EG> Hапример, так:
 
  EG> value=8F
  EG> bits=`printf "ibase=16\nobase=2\n$value\n" | bc`
 
  EG> case $bits in
  EG> 1???????)  echo 7th bit is set;;
  EG> ???????0)  echo zero bit is not set;;
  EG> esac)
 
 Спасибо. Я не думал, что все так легко :-)
 
 --------
 Best regards. Igor Zemliansky
 automatic(at)hotmail(dot)ru
 -- 
 Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru
 --- ifmail v.2.15dev5.3
  * Origin: Talk.Mail.Ru (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 Re: Вопрос по скрипт-программированию   Igor Zemliansky   09 Apr 2004 19:56:29 
Архивное /ru.unix.bsd/64881a706070.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional