-2

我想为 10 台服务器执行 rsh,我已将登录名和服务器名称保存在一个文件中,并尝试使用以下代码运行该文件。但它显示第一行的输出而不是其他行的输出。

while read line
do
    rsh -l $line 'hostname;id'
done <TestFIle
4

1 回答 1

0

rsh连续读取其标准输入并将其发送到远程,因此第一次调用rsh将读取文件的第二行到最后一行并将它们发送到第一台服务器。(即使服务器上的命令实际上没有读取它们的标准输入,它也会这样做。)没有什么要读取的,read循环将结束。

试试这个。告诉它不要从标准输入读取的-n选项。rsh

while read line
do
    rsh -n -l $line 'hostname;id'
done <TestFIle
于 2016-03-04T01:42:44.883 回答