Как отменить нежелательные сообщения об ошибке из команды ssh?

Я пытаюсь избежать печати сообщений на консоль, полученную, когда лун не найден во время команды ssh. SSH принадлежит файлу NetApp. Команда запускается на хосте Solaris 10.

Вот некоторые из кода, который я выполняю:

for filer in <list> do echo $filer ssh $filer lun show <lunpath> |grep vol ... done 

Если LUN найден, код работает нормально, но если LUN не найден, SSH-команда возвращает «lun show: Нет такого LUN существует»

Я пробовал несколько команд grep и egrep, включая варианты -v … но я до сих пор получаю сообщение «lun show: no such LUN exists», напечатанное на консоли.

Что мне нужно сделать, чтобы пропустить печать этой строки на консоли?

One Solution collect form web for “Как отменить нежелательные сообщения об ошибке из команды ssh?”

Более новый ssh, похоже, возвращает stdout и stderr из удаленного хоста в виде двух разных потоков.

Чтобы создать фильтр, который объединяет как stdout, так и stderr, вы можете сделать:

 ssh $filer lun show <lunpath> 2>&1 |grep vol 

Чтобы отправить stderr в отдельный файл, вы можете сделать следующее:

 ssh $filer lun show <lunpath> 2>lun.show.stderr |grep vol if [ -s lun.show.stderr ]; then # there was some stderr output grep -v "No such LUN exists" lun.show.stderr fi 

Отбросить stderr:

 ssh $filer lun show <lunpath> 2>/dev/null | grep vol 

Обратите внимание, что это может скрыть реальные ошибки и затруднить отладку.

  • Команда scp не выполняет команду cp
  • Переслать X11 через два туннеля SSH
  • Как ускорить X по быстрому соединению? (особенно по ssh)
  • поведение ssh для пользователя root и non-root
  • Как выйти из ssh-соединения при административно запрещенной ошибке
  • Рекомендации для SSH, агента tmux & GnuPG
  • Аутентификация ключа SSH с несколькими компьютерами
  • Есть ли способ узнать, сколько экземпляров пользователя root регистрируется на Linux-машине?
  • Окончания строк при использовании экрана GNU
  • Не удается запустить двоичный исполняемый файл на Ubuntu 12.04
  • Как я могу использовать собственный локальный текстовый редактор для изменения системных (требуется root для сохранения) файлов в удаленной системе?
  • Linux и Unix - лучшая ОС в мире.