`
翻滚吧--少年
  • 浏览: 25769 次
  • 性别: 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下非交互式远程执行命令脚本.docx

    为了解决这些问题,"Linux下非交互式远程执行命令脚本"引入了一种名为jetfire的工具,它提供了一种更加灵活和自动化的方式来执行远程命令。 SSH的局限性主要体现在两方面:一是需要交互式地输入密码或建立SSH密钥对...

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

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

    用于shell脚本无交互的ssh自动登陆(转载)

    在进行Linux系统管理或自动化任务部署时,经常需要使用SSH(Secure Shell)协议远程连接到其他服务器上执行命令或管理操作。出于安全考虑,SSH在连接远程主机时会要求输入密码,但在脚本自动化场景中,这种交互式...

    通过SSHPASS执行命令及相关脚本

    标题中的“通过SSHPASS执行命令及相关脚本”是指在Linux环境下使用`sshpass`工具进行非交互式SSH登录并执行远程命令的技术。`sshpass`是一个命令行实用程序,它允许用户在不手动输入密码的情况下,通过SSH连接执行...

    远程批量修改linux服务器密码的脚本归类.pdf

    我们使用 SSH 来连接远程 Linux 服务器,并执行相关的命令。 3. Linux 服务器密码的修改:我们使用 Expect 脚本来修改 Linux 服务器的密码。该脚本可以自动地输入密码,并执行相关的命令。 4. 用户和组的管理:在 ...

    python连接ssh 远程操作linux命令行

    Python SSH库,如Paramiko和ssh模块,是用于在Windows环境下连接到Linux服务器并执行远程命令的强大工具。本文将深入探讨如何使用Python实现这一功能,以及它可以带来的各种可能性。 首先,`Paramiko`是一个实现...

    linux下使用ssh远程执行命令批量导出数据库到本地

    总结,通过SSH远程执行命令批量导出数据库到本地,可以有效提高工作效率,尤其是在多服务器、多数据库的情况下。但要注意数据格式的兼容性和脚本的灵活性,以便适应不同的需求。在实际操作中,确保遵循最佳安全实践...

    远程调用linux命令的demo

    通常,我们可以使用SSH(Secure Shell)协议来实现这一点,例如Python中的paramiko库,或者利用expect模块进行交互式命令执行。 “工具”标签可能暗示了文章会提到一些现成的工具,如SSH客户端(如OpenSSH、PuTTY)...

    Linuxssh登录远程服务器 expect

    而 Expect 是一个自动化脚本工具,专门设计用来自动化那些交互式进程,例如SSH登录过程。Expect使得编写自动化脚本变得更加简单,特别是在需要进行重复性的、模式可预测的交互时。 标题中的"Linux ssh登录远程...

    远程shell调用.rar

    3. **通道开启**:连接成功后,需要打开一个`ChannelExec`或`ChannelShell`通道来执行命令或交互式Shell。 4. **命令执行**:在通道上执行`execCommand()`方法,传入要执行的Shell脚本或命令。 5. **数据交互**:...

    linux下使用ssh启动停止weblogicf服务.docx

    以下是一些关于如何在Linux下使用SSH启动和停止WebLogic服务的关键知识点: 1. **SSH连接**: SSH是一种加密的网络协议,用于在不安全的网络上安全地执行命令和传输数据。要连接到远程Linux服务器,你可以使用`ssh...

    通过 SSH 在远程 Linux 系统上运行命令的方法

    标题中的“通过 SSH 在远程 Linux 系统上运行命令的方法”指的是使用 Secure Shell (SSH) 协议在本地计算机上连接并控制远程 Linux 操作系统的技巧。SSH 是一种网络协议,用于安全地远程执行命令、传输文件和其他...

    shell脚本,通过snmp方式获取远程服务器的CPU内存和硬盘的使用率

    在运行这个脚本之前,确保远程服务器已启用SNMP服务,并且防火墙规则允许来自执行脚本的主机的SNMP请求。 总的来说,通过学习和实践这样的Shell脚本,你可以有效地自动化监控远程服务器的关键性能指标,从而提高IT...

    SSH 远程执行任务 - sparkdev - 博客园1

    《SSH远程执行任务详解》 ...总结,SSH作为远程操作的利器,通过灵活地使用命令参数和脚本,可以实现复杂而高效的远程自动化任务。了解并掌握这些技巧,对于提升Linux系统的管理和运维效率至关重要。

    SSH脚本文件.zip

    使用非root用户执行脚本,只给予必要的权限,并且避免硬编码敏感信息如密码在脚本中,可以使用环境变量或密钥对授权。 7. **日志记录**:在脚本中添加日志输出,如`echo`命令,可以帮助追踪脚本的执行过程,方便...

    python执行scp命令拷贝文件及文件夹到远程主机的目录方法

    Python执行SCP命令是一种在编程中实现自动化文件传输到远程服务器的常见方法,特别是在需要脚本化或批量处理任务时。SCP(Secure Copy)是基于SSH协议的安全文件传输工具,它允许用户通过加密连接将文件从本地复制到...

    SSH简介及配置使用SSH登陆远程主机讲义

    此外,SSH还可以用于自动化运维脚本,如使用`expect`脚本自动化处理交互式登录过程。 总的来说,SSH是现代网络管理中的重要工具,它的安全性和多功能性使得它成为了远程管理服务器的首选方案。通过正确配置和使用...

    java实现模拟SSH和telnet登陆(实现命令的发送和接受)

    而 Telnet 是一种较老的协议,它允许用户通过网络在远程主机上执行命令,但通常不推荐使用,因为它传输的数据是明文的,不安全。 要实现 SSH 登陆,Java 社区提供了一些库,如 JSch (Java Secure Channel)。JSch 是...

Global site tag (gtag.js) - Google Analytics