java调用shell脚本启停redis

java代码:
public class Shell {

  public static void main(String[] args) {
        try {
            Connection con = new Connection("IP地址");
            ConnectionInfo info = con.connect();
            boolean result = con.authenticateWithPassword("用户名", "密码");
            Session session = con.openSession();
            //使用脚本updown.sh启节点
            session.execCommand("cd /opt/app/redis/redis-4.0.9/src && bash updown.sh startup");
            //使用脚本updown.sh停节点
            //session.execCommand("cd /opt/app/redis/redis-4.0.9/src && bash updown.sh shutdown");
            InputStream stdout = new StreamGobbler(session.getStdout());
            BufferedReader br = new BufferedReader(new InputStreamReader(stdout));
            //将进程输入控制台,便于查看。
            String rd;
            while((rd=br.readLine())!=null){
            	System.out.println(rd);
            }
            session.close();
			con.close();
        } catch (Exception ex) {
            System.out.println(ex.getLocalizedMessage());
        }
    }

}

updown.sh脚本:

#!/bin/bash
startup(){
cd /opt/app/redis/redis-4.0.9/src
./redis-server /opt/cachecloud/conf/redis-standalone-6668.conf
}
shutdown(){
cd /opt/app/redis/redis-4.0.9/src
./redis-cli -h 172.25.5.64 -p 6668 -a fBYQx9oHhGPKpogVSw2GZMfJhrSnlKXV shutdown
}
ps -ef | grep redis
$1

猜你喜欢

转载自blog.csdn.net/qq_43032012/article/details/88394412