我想知道是否可以通过ssh执行作业。特别是我在许多机器上有一个不同的输入文件列表,它们在同一个地方都有相同的可执行文件。是否有一些命令意味着我不必使用ssh从一台机器移动到另一台机器并将它们设置为单独运行。我想到的那种东西就像是:
ssh RemoteMachine1:./ Executable~ / Inputfile_1 ssh RemoteMachine2:./ Executable~ / Inputfile_2
哪些可以从我的主机上运行? 提前致谢 千斤顶
答案 0 :(得分:2)
尝试使用Fabric。
“Fabric是一个Python(2.5或更高版本)库和命令行工具,用于简化SSH在应用程序部署或系统管理任务中的使用。”
答案 1 :(得分:1)
如果您可以编写Perl,请尝试Net::OpenSSH::Parallel。
例如:
my %file = (host1 => file1,
host2 => file2,
...);
my $pssh = Net::OpenSSH::Parallel->new();
for my $host (keys %files) {
$pssh->add_host($host);
$pssh->push($host, 'cmd',
{stdout_file => "$host.out"},
'./Executable', $file{$host});
}
$pssh->run
答案 2 :(得分:0)
您通常可以通过batch
运行ssh
命令;详细了解batch命令和batch processing。