如何通过SSH在Python中调用.ksh文件作为Unix命令的一部分

0 投票
2 回答
1381 浏览
提问于 2025-04-17 14:04

我想实现以下几个目标:

我有一个文件,里面包含了一些需要在远程服务器上逐个执行的任务,我打算通过SSH接口来完成,并且把结果保存下来。

当我直接在远程服务器上用putty执行以下命令时,它能成功运行,但当我通过Python的SSH编程来执行时,却提示找不到autosys.ksh这个文件。

autosys.ksh autorep -J JOB_NAME

有没有什么建议?请帮帮我。谢谢!

2 个回答

0

在看到你对第一个回答的评论后,你可能想要创建一个bash脚本,脚本的第一行写上bash的路径,然后再写上autosys的命令。

这样做会打开一个bash的环境,然后在这个环境中执行脚本里的命令。

另外,如果你在这个环境中使用autosys命令,最好在运行任何autosys命令之前,先为用户设置好autosys的环境。

1

Fabric 是一个不错的选择。从它的主页上可以看到,

Fabric 是一个用于简化 SSH 使用的 Python(2.5 或更高版本)库和命令行工具,主要用于应用程序部署或系统管理任务。

这里有一个简单的例子,

>>> from fabric.api import run, env, cd, settings, hide, show
>>> env.host_string='xxx.xxx.com'
>>> env.user='user'
>>> env.password='password'
>>> run('ls -lart')

撰写回答