Ubuntu 14.10 下SSH执行远程命令
2015-07-20 21:09
330 查看
有些时候需要在远程机器上执行命令,如果每次都等进去挺麻烦的,所以用脚本执行会方便很多。下面介绍一下在shell脚本中执行远程命令。
1,首先写好要运行的脚本 run-command.sh, 加上执行权限 chmod +x test.sh
2,把脚本文件放到远程服务器对应的用户目录
3,在本机执行 ssh remote_user@remote_ip "source /etc/profile;~/run-command.sh"
4,加上/etc/profile这样就不会出现找不到自己的环境变量了
5 一个小demo(源自网络)
附一个启动hadoop机群的命令,运行的时候输入参数,是启动还是关闭
下面是opt-hadoop-all.sh的内容
1,首先写好要运行的脚本 run-command.sh, 加上执行权限 chmod +x test.sh
2,把脚本文件放到远程服务器对应的用户目录
3,在本机执行 ssh remote_user@remote_ip "source /etc/profile;~/run-command.sh"
4,加上/etc/profile这样就不会出现找不到自己的环境变量了
5 一个小demo(源自网络)
#!/bin/bash #变量定义 ip_array=("192.168.1.1" "192.168.1.2" "192.168.1.3") user="test1" remote_cmd="/home/test/1.sh" #本地通过ssh执行远程服务器的脚本 for ip in ${ip_array[*]} do if [ $ip = "192.168.1.1" ]; then port="7777" else port="22" fi ssh -t -p $port $user@$ip "remote_cmd" done
附一个启动hadoop机群的命令,运行的时候输入参数,是启动还是关闭
sh opt-hadoop-all.sh start
下面是opt-hadoop-all.sh的内容
# command parameter:start or stop command_input=$1 ##---------- opt zookeeper ------------------------------- ssh hadoop@1421-0000 "source /etc/profile;zkServer.sh $command_input" ssh hadoop@1421-0003 "source /etc/profile;zkServer.sh $command_input" ssh hadoop@1421-0004 "source /etc/profile;zkServer.sh $command_input" ssh hadoop@1421-0005 "source /etc/profile;zkServer.sh $command_input" ssh hadoop@1421-0006 "source /etc/profile;zkServer.sh $command_input" ##---------- opt zookeeper end -------------------------- ##---------- opt hdfs-all ----------------------------------- master_namenode_ip="1421-0002" ssh hadoop@$master_namenode_ip "source /etc/profile;/home/hadoop/software/cloud/hadoop-2.6.0/sbin/$command_input-all.sh" ##---------- opt hdfs-all end ----------------------------- ##---------- opt yarn-all ---------------------------------- primary_rm_ip="1423-0001" standby_rm_ip="1423-0002" historyjob_ip="1423-0003" ssh hadoop@$primary_rm_ip "source /etc/profile;$command_input-yarn.sh" ssh hadoop@$standby_rm_ip "source /etc/profile;yarn-daemon.sh $command_input resourcemanager" ssh hadoop@$historyjob_ip "source /etc/profile;mr-jobhistory-daemon.sh $command_input historyserver" ##---------- opt yarn-all end ----------------------------- ##---------- opt httpfs -------------------------------------- httpfs_ip="1421-0002" ssh hadoop@$httpfs_ip "source /etc/profile;httpfs.sh $command_input" ##---------- opt httpfs end -----------------------------
相关文章推荐
- 常用数制的输入与输出(JAVA)
- Struts2教程--第一章 搭建Struts2开发环境
- ZooKeeper FAQ
- HEALTHY LIFE OPENCART 自适应主题模板 ABC-0053
- hdu 1863 畅通工程(kruskal)(基础)
- XMPP协议的原理介绍
- ZOJ1463
- 【二分法】 HDU 2446 Shell Pyramid
- UIbutton系统按键(System)和图片按键(Custom)对比
- 张珺 2015/07/07 个人文档
- 数据结构专题
- 欢迎使用CSDN-markdown编辑器
- HEALTHY LIFE OPENCART 自适应主题模板 ABC-0053
- HDOJ 2035 人见人爱A^B(快速幂取模)
- font-face 使用
- 关于TableViewCell 自适应(文字自适应)
- 关于在64位win7下运行Virtualbox安装系统时出错(提示VBoxDD.DLL错误)的解决
- spring源码下载
- ZooKeeper管理员指南——部署与管理ZooKeeper
- POJ 3279二进制枚举