`
翻滚吧--少年
  • 浏览: 25000 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Linux下使用ssh非交互式远程执行命令脚本

 
阅读更多
机器1:192.168.201.241
机器2:192.168.201.222

在241上执行:ssh 192.168.201.222 test.sh,运行结果:JAVA_HOME environment variable is not set


test.sh如下:
#!/bin/sh
# ---------------------------------------------------------------------------------
# -- Set Java Home Environment variable
# ---------------------------------------------------------------------------------

if [ -z $JAVA_HOME ]
    then
        echo "JAVA_HOME environment variable is not set"
        exit 1
else
    echo "USED JAVA = $JAVA_HOME"
fi


解决:test.sh中添加source ~/.bash_profile,运行成功!

需要特别注意的是:当远程脚本中使用了一些命令,而这些命令被Shell解析器的识别依赖于PATH环境变量时,该脚本需要在其第一行中包含执行profile文件的命令。比如,在Bash中,该脚本的第一行为: source ~/.bashrc
否则,远程脚本可能报一些命令无法找到的错误。

参考:http://viscent.iteye.com/blog/1706691


分享到:
评论

相关推荐

    Linux通过Shell脚本命令修改密码的两种方式

    1. ssh 远程到主机; 2. 切换到root账号; [一般都是切换到root进行密码修改,如果普通用户修改自己的密码,要输入原密码,然后新密码要满足复杂度才OK]; 3. passwd username 使用passwd username 修改 username 的...

    Shell脚本实现自动输入密码登录服务器

    主要介绍了Shell脚本实现自动输入密码登录服务器,本文使用expect来实现这个需求,讲解了expect的安装及使用脚本,需要的朋友可以参考下

    Linux管理员指南

    令which 83 6.4.15 查找命令的保存位置命令whereis 83 6.4.16 释放磁盘空间命令df 84 6.4.17 同步磁盘命令sync 84 6.5 进程管理 84 6.5.1 列出进程清单命令ps 84 6.5.2 交互列出进程清单命令top ...

    wurmterm:具有服务自动发现和呈现功能Linux终端

    详细运作方式SSH别名捕获交互式简单连接(ala“ ssh ”) Alias命令将本地端口添加到远程套接字转发ssh -L 127.0.0.1:2046:/tmp/wt.socket <host>Alias命令以嵌入式bash启动远程命令侦听器ssh -t <host> "();...

    Ubuntu权威指南(2/2)

    1.3.3 使用info命令查询命令的相关信息 8 1.4 安装Ubuntu Linux系统 9 1.4.1 安装前的准备 10 1.4.2 安装Ubuntu Linux系统 11 1.4.3 安装后的软件维护与更新 16 第2章 GNOME桌面环境 18 2.1 GNOME桌面环境概述 19 ...

    Ubuntu权威指南(1/2)

    1.3.3 使用info命令查询命令的相关信息 8 1.4 安装Ubuntu Linux系统 9 1.4.1 安装前的准备 10 1.4.2 安装Ubuntu Linux系统 11 1.4.3 安装后的软件维护与更新 16 第2章 GNOME桌面环境 18 2.1 GNOME桌面环境概述 19 ...

    linux.chm文档

    locate \*.ps 寻找以 '.ps' 结尾的文件 - 先运行 'updatedb' 命令 whereis halt 显示一个二进制文件、源码或man的位置 which halt 显示一个二进制文件或可执行文件的完整路径 挂载一个文件系统 mount /dev/...

    老男孩python 四期

    5、编写用户交互脚本 6、读取用户输入 7、基本流程控制,if..else/for x in…/while True 8、程序流程控制二,break\continue\ 嵌套循环 9、项目实践:编写用户登录认证程序 ※实现用户名密码登陆,输入错误3次后...

    remocon:快速轻松地控制本地git工作树的远程副本

    遥控通过在几乎没有时间/精力的情况下来回发送更改,即使在需要在远程主机上运行内容的情况下,也可以将您喜欢的编辑器/ IDE与本地git工作树一起使用。概要在航站楼从本地交互式外壳程序,在git工作树的任何子目录中...

    Xshell6与Xftp6的免费安装包.zip(持续更新)

    XShell6功能强悍,具备标签式的环境,动态端口转发,自定义键的映射关系,用户定义的按钮,VB脚本,显示2字节字符和国际语言支持UNICODE,支持SSH1, SSH2, 以及Microsoft Windows 平台的TELNET 协议。Xshell 通过...

    Python Cookbook

    15.10 使用SSH执行远程登录 554 15.11 通过HTTPS验证一个SSL客户端 557 第16章 关于程序的程序 559 引言 559 16.1 验证字符串是否代表着一个合法的数字 564 16.2 导入一个动态生成的模块 565 16.3 导入一个...

    JAVA上百实例源码以及开源项目

    使用时候只需在控制台窗口执行jar就可以了。 Java 3DMenu 界面源码 5个目标文件 内容索引:Java源码,窗体界面,3DMenu  Java 3DMenu 界面源码,有人说用到游戏中不错,其实平时我信编写Java应用程序时候也能用到吧,...

    JAVA上百实例源码以及开源项目源代码

    使用时候只需在控制台窗口执行jar就可以了。 Java 3DMenu 界面源码 5个目标文件 内容索引:Java源码,窗体界面,3DMenu Java 3DMenu 界面源码,有人说用到游戏中不错,其实平时我信编写Java应用程序时候也能用到吧,不...

    java开源包8

    WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。WebSocket4J 并未实现客户端通讯协议,所以不能用它来连接 WebSocket 服务器。 Struts验证码插件 JCaptcha4Struts2 ...

    java开源包1

    WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。WebSocket4J 并未实现客户端通讯协议,所以不能用它来连接 WebSocket 服务器。 Struts验证码插件 JCaptcha4Struts2 ...

    java开源包11

    WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。WebSocket4J 并未实现客户端通讯协议,所以不能用它来连接 WebSocket 服务器。 Struts验证码插件 JCaptcha4Struts2 ...

    java开源包2

    WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。WebSocket4J 并未实现客户端通讯协议,所以不能用它来连接 WebSocket 服务器。 Struts验证码插件 JCaptcha4Struts2 ...

    java开源包3

    WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。WebSocket4J 并未实现客户端通讯协议,所以不能用它来连接 WebSocket 服务器。 Struts验证码插件 JCaptcha4Struts2 ...

    java开源包6

    WebSocket4J 是一个用 Java 实现的 WebSocket 协议的类库,可使用 Java 来构建交互式 Web 应用。WebSocket4J 并未实现客户端通讯协议,所以不能用它来连接 WebSocket 服务器。 Struts验证码插件 JCaptcha4Struts2 ...

Global site tag (gtag.js) - Google Analytics