我从我的电脑运行一个命令:
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,狼
答案1
你说你还获取这些行,因此我假设您获得了所需的输出以及这些 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)'"
取决于导致错误的原因。
答案2
我猜您在 ssh 连接的机器上的 bash 配置文件或 bashrc 等中有一些 tput 命令。请检查您主目录中的文件 .bashrc .bash_profile(在远程机器上)或 /etc 中的文件(如您的问题中提到的文件)。很难说出是什么原因导致的,因为您可能修改了这些文件,并且这会导致问题?
这还取决于您是否想要消除问题,或者您只是想让它不引人注意:那么可以将 stderr 重定向到 /dev/null (编辑:据我现在所知,其他答案与此有关)。