我必须使用shell脚本并行地使用ssh登录各种服务器。 这是一个密码少的身份验证。我必须登录25个服务器并重新启动一个需要花费大量时间的进程。因此,我想同时在所有服务器中执行此过程。我的脚本是这样的:
while read line
do
ssh $line
------restart process-------
done < list.txt &
此处“list.txt”包含服务器列表。我用过“&amp;”为每次迭代调用新shell并为所有服务器重复该过程。但是脚本仍然依次为列表中的服务器执行重启过程。它不会同时执行重启过程。脚本运行的服务器在bash上是bulit,而必须重新启动进程的25个服务器是korn shell上的bulit。任何人都可以告诉我脚本中的错误或使用ssh并行登录是否可行? 提前致谢
答案 0 :(得分:1)
未经测试,但这应该使用require_once('tmhOAuth/tmhOAuth.php');
//require_once('tmhOAuth/tmhUtilities.php');
$tmhOAuth = new tmhOAuth(array(
'consumer_key' => 'xxxx',
'consumer_secret' => 'xxxx',
'user_token' => 'xxxx',
secret' => 'xxxx',
));
$tweet_id_str = 'xxxx';
$code = $tmhOAuth->user_request(array(
'method' => 'DELETE',
'url' => $tmhOAuth->url('1.1/statuses/destroy.json'),
'params' => array(
'id' => $tweet_id_str
)
));
print "DEBUG: <pre>";
print_r($tmhOAuth->response);
print "</pre>";
- 请参阅Wikipedia heredoc:
heredoc
答案 1 :(得分:0)
您正在使用主循环,而不是ssh执行尝试使用此
while read line
do
ssh $line ---restart process--- &
done < list.txt