Shell的远程协助

Shell的远程协助,这是文本方式的远程,占用带宽小,速度快。 

一、检查系统是否安装有tcl和expect这2个软件包 
[root@db ~]# rpm -qa | grep tcl 
[root@db ~]# rpm -qa | grep expect 
如果没有就yum install tcl expect安装 
二、检查是否有kibitz命令 
[root@db ~]# whereis kibitz 
kibitz: /usr/bin/kibitz /usr/share/man/man1/kibitz.1.gz 
三、查看当前登陆的2个用户 
[root@db ~]# w 
10:25:31 up 23 min,  2 users,  load average: 0.01, 0.16, 0.12 
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT 
root     pts/0    222.90.x.x    10:20    0.00s  0.25s  0.01s w 
root     pts/1    192.168.0.250    10:21    1:52   0.12s  0.12s -bash 
可以看到2个root用户登陆,终端为 pts/0,另外一方为 pts/1 
四、这时候,发起方运行(pts/0 向 pts/1发起请求) 
[root@db ~]# kibitz -tty pts/1 root 
asking root to type:  kibitz -11251      # 这是系统自动产生的ID号 
在被邀请一方的终端上会出现以下提示: 
[root@db ~]# 
Message from root@itaa. pts/0 at 10:26 ... 
Can we talk? Run: kibitz -11251 
EOF 
此时在被邀请方复制 kibitz -11251 在 EOF 后面,如下: 
[root@itaa ~]# 
Message from root@itaa. pts/0 at 10:26 ... 
Can we talk? Run: kibitz -11251  #告诉被邀请方要运行kibitz -进程ID 
EOF 
kibitz -11251       #被邀请方手动输入回车 
Escape sequence is ^] 
[root@db ~]# 
五、这个时候,就完成了共享同一个登陆shell的步骤,试着在一个终端下输入命令,可以看到另外一个终端显示一样的输出,而且是实时的.

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23141985/viewspace-716638/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/23141985/viewspace-716638/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
校园悬赏任务平台对字典管理、论坛管理、任务资讯任务资讯公告管理、接取用户管理、任务管理、任务咨询管理、任务收藏管理、任务评价管理、任务订单管理、发布用户管理、管理员管理等进行集中化处理。经过前面自己查阅的网络知识,加上自己在学校课堂上学习的知识,决定开发系统选择小程序模式这种高效率的模式完成系统功能开发。这种模式让操作员基于浏览器的方式进行网站访问,采用的主流的Java语言这种面向对象的语言进行校园悬赏任务平台程序的开发,在数据库的选择上面,选择功能强大的Mysql数据库进行数据的存放操作。校园悬赏任务平台的开发让用户查看任务信息变得容易,让管理员高效管理任务信息。 校园悬赏任务平台具有管理员角色,用户角色,这几个操作权限。 校园悬赏任务平台针对管理员设置的功能有:添加并管理各种类型信息,管理用户账户信息,管理任务信息,管理任务资讯公告信息等内容。 校园悬赏任务平台针对用户设置的功能有:查看并修改个人信息,查看任务信息,查看任务资讯公告信息等内容。 系统登录功能是程序必不可少的功能,在登录页面必填的数据有两项,一项就是账号,另一项数据就是密码,当管理员正确填写并提交这二者数据之后,管理员就可以进入系统后台功能操作区。项目管理页面提供的功能操作有:查看任务,删除任务操作,新增任务操作,修改任务操作。任务资讯公告信息管理页面提供的功能操作有:新增任务资讯公告,修改任务资讯公告,删除任务资讯公告操作。任务资讯公告类型管理页面显示所有任务资讯公告类型,在此页面既可以让管理员添加新的任务资讯公告信息类型,也能对已有的任务资讯公告类型信息执行编辑更新,失效的任务资讯公告类型信息也能让管理员快速删除。
可以使用Java的ProcessBuilder类来远程调用shell脚本。ProcessBuilder类允许您启动并控制外部进程。以下是一个示例代码,它使用ProcessBuilder类从远程服务器上运行shell脚本。 ``` import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; public class RemoteShellExecutor { public static void main(String[] args) throws IOException, InterruptedException { String host = "remote-host"; // 远程服务器IP地址或域名 String user = "remote-user"; // 远程服务器用户名 String password = "remote-password"; // 远程服务器密码 String command = "/path/to/remote/script.sh"; // 远程服务器上的shell脚本路径 // 创建ProcessBuilder对象 ProcessBuilder processBuilder = new ProcessBuilder(); // 设置远程SSH连接命令 processBuilder.command("sshpass", "-p", password, "ssh", user + "@" + host, command); // 启动进程 Process process = processBuilder.start(); // 读取进程输出 BufferedReader reader = new BufferedReader(new InputStreamReader(process.getInputStream())); String line; while ((line = reader.readLine()) != null) { System.out.println(line); } // 等待进程结束 int exitCode = process.waitFor(); System.out.println("Process exited with code " + exitCode); } } ``` 在上面的示例代码中,我们使用ProcessBuilder类创建了一个SSH连接命令,并将其设置为要执行的命令。然后,我们启动进程,并使用一个缓冲读取器来读取进程输出。最后,我们等待进程结束,并打印进程退出代码。请注意,您需要在本地计算机上安装sshpass软件包,以便使用密码连接到远程服务器。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值