@rtest

Вывод ошибки в файл при присваивании переменной результата выполнения команды?

Добрый день.
Нужно выловить в процессе выполнения скрипта проблемы на стадии присвоения переменной результата от выполнения некой команды.
Пример:
LOG=log.log
ssh tomcat@192.168.1.1 './script log' 2>&1 | tee -a $LOG
FREE=($(df -h /mnt/1)) 2>&1 | tee -a $LOG
FREE2=`df -h /mnt/2` | tee -a $LOG

В данном случае прямая директива ssh отрабатывает отлично - и на экран и в файл.
Однако, следующие две строки отписываются только на экран, но не в файл лога. А хотелось бы отловить проблему еще на стадии выполнения df -h и записать ее в лог.
Как правильно запилить присваивание переменной параллельно с выводом результатов в лог?
Спасибо.
  • Вопрос задан
  • 96 просмотров
Решения вопроса 1
@rtest Автор вопроса
Так. Потупив, я, видимо, нашёл адекватное решение, и оно, естесственно, оказалось в сто раз проще =)))

FREE=`df -h /mnt/1 2>>$LOG`

При таком порядке как раз выполняется то, что надо:
либо результат удачного выполнения присваивается переменной,
либо ошибка летит в файл лога.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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