JSch将命令发送到多个IP

时间:2019-01-06 18:48:27

标签: java android ssh ip jsch

我想使用jsch android将一个命令发送到多个ip地址,例如我的IP范围是192.168.0.1到192.168.0.254,并且我想将一个命令发送到所有此ip,这可能吗?

现在我的代码

public class MainActivity extends AppCompatActivity {

    String host;
    String user;
    String password;

    private static final String TAG = "MainActivity";

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main_activity);

    }


    // my command
    public void test(){
        EditText t1 = (EditText) findViewById(R.id.user);
        EditText t2 = (EditText) findViewById(R.id.host);
        EditText t3 = (EditText) findViewById(R.id.password);

        if (t1 != null && t2 != null && t3 != null) {
            host = t2.getText().toString();
            user = t1.getText().toString();
            password = t3.getText().toString();

            int port=22;
            try{

                JSch jsch = new JSch();
                Session session = jsch.getSession(user, host, port);
                session.setPassword(password);
                session.setConfig("StrictHostKeyChecking", "no");
                session.setTimeout(10000);
                session.connect();
                ChannelExec channel = (ChannelExec)session.openChannel("exec");
                channel.setCommand("my command");
                channel.connect();
                channel.disconnect();

            }
            catch(JSchException e){
            }
        }
    }

}

我想要这样,所以当我单击发送按钮时,它会将命令“重新启动”发送到192.168.0.1、192.168.0.2、192.168.0.3,直到192.168.0.254。我想你理解我,对不起我的英语。

example

0 个答案:

没有答案