Выполнять команды на удаленном компьютере

Я запускаю команду со своего компьютера:

ssh user@server-name "df -hP | egrep '(/home|/cors)'"

проблема в том, что я получаю еще 3 строки:

tput: No value for $TERM and no -T specified
tput: No value for $TERM and no -T specified
/etc/bash.bashrc.local: line 9: HISTSIZE: readonly variable

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

Br, Wolfy

1
задан 11 February 2011 в 17:55

2 ответа

Вы говорите, что также получают эти строки, поэтому я предполагаю, что вы получите требуемый вывод вместе с этими сообщениями stderr. Вы можете просто перенаправить части stderr на /dev/null следующим образом:

ssh user@server-name "df -hP | egrep '(/home|/cors)' 2>/dev/null"

или

ssh user@server-name "df -hP 2>/dev/null | egrep '(/home|/cors)'"

В зависимости от того, что делает ошибку.

0
ответ дан 11 February 2011 в 17:55

Я полагаю, у вас есть какая-то команда tput в вашем профиле bash, bashrc и т. Д. На машине, с которой вы работаете с ssh'd. Проверьте файлы .bashrc .bash_profile у себя дома (на удаленной машине) или файлы в / etc, например, тот, который был упомянут в вашем вопросе. Трудно сказать, что может вызвать это, так как вы можете изменить эти файлы, и это может вызвать проблему?

Это также зависит от того, хотите ли вы устранить проблему, или вы просто хотите, чтобы она была незаметной. : тогда может быть нормально перенаправить stderr, например, в / dev / null (отредактировано: поскольку другой ответ об этом, насколько я могу видеть сейчас).

0
ответ дан 11 February 2011 в 17:55

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

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