从其他主机运行命令时出现语法错误

从其他主机运行命令时出现语法错误

我运行命令来获取服务器正常运行时间,如下所示

[root@localhosts ~]# printf "`uname -n`  `uptime| awk -F " " {'print $3,$4'}`\n"  
localhosts  75 days,

现在,当我从另一个主机运行相同的命令到上面的 linux 服务器“localhosts”以获得相同的输出时,我收到错误

[root@master /]# ssh localhosts 'printf "`uname -n`  `uptime| awk -F " " {'print $3,$4'}`\n"'  
awk: cmd. line:1: {print  
awk: cmd. line:1:       ^ unexpected newline or end of string  

您是否知道从其他主机运行命令以从远程主机获取类似输出的更好方法?

答案1

ssh localhosts 'printf "`uname -n`  `uptime| awk -F " " {'\''print $3,$4'\''}`\n"'

问题是您嵌套了单引号。这样效果不好。

相关内容