pypsh-cli用于在所有与

pypsh的Python项目详细描述


pypsh是一个简单的命令行工具,可以在多个 东道主。

它通过paramiko/cite>python库使用ssh

为什么要用Pypsh而不是DSH?

因为用dsh管理组文件很乏味。Pypsh不需要 配置,它只是工作。

与dsh类似,pypsh可用于在 平行的。此外,还可以将文件复制到 一次。有关更多使用说明,请参见下文。

命令或文件复制操作将在 known_承载文件并匹配给定的正则表达式。

这意味着为了让pypsh了解主机,必须连接 用普通的ssh至少一次。

命令执行

在与给定正则表达式匹配的一组主机上执行命令:

pypsh <hostregex> <cmd-to-execute>

例如:

pypsh "role\d+\.customer\.your\.domain" "uptime"

与其并行执行命令,还可以执行 一个接一个的命令。为此,请使用:

pypsh "role\d+\.customer\.your\.domain" --interval 0.1 cmd "uptime"

或者在命令之间等待(这在重新启动服务时可能很有用 就像集群中的elasticsearch一样:

pypsh "role\d+\.customer\.your\.domain" -i 60 cmd "uptime"

pypsh也可以从stdin中读取。因此可以将命令导入其中:

echo "uptime" | pypsh "myhosts[0-9]"

注意

仅当pypsh本身仅接收到一个参数时才支持管道。 因此,不可能将其与其他参数(如 间隔

将文件复制到多个主机

将给定文件复制到一组主机:

pypsh "my\.domains\d+\.com" copy /tmp/here/myfile.txt /tmp/remote/file.txt

安装

pypsh可以使用pip安装:

pip install pypsh

开发

若要处理pypsh签出Git存储库,请创建 虚拟环境和安装依赖项:

git clone https://github.com/mfussenegger/pypsh.git
cd pypsh
mkvirtualenv pypsh
pip install -r requirements.txt

有时将pypsh命令指向本地开发很有用 分行:

pip install --upgrade --force-reinstall --editable .

但通常这样调用它就足够了:

python pypsh/main.py ...

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
Docker&SeleniumJava:无法在Docker容器上运行的chrome浏览器中上载图像/文件   在python中运行java命令   Java垃圾收集器异常行为   java java是否根据底层操作系统执行字节码级优化?   java是否可以休眠自定义查询返回映射而不是列表?   java Spring引导RabbitMQ接收器Jackson反序列化到POJO   apache flex在ActionScript3中创建对象相等“HashMap”作为java HashMap   java如何在Eclipse集成中切换JProfiler启动器   缓存JSP页面结果的java最佳实践?   java集成jaxb绑定文件,使用CXF生成基于WSDL的客户端   java为什么在上传操作结束之前,客户端没有检测到HttpServletResponse的PrintWriter内容?   java在接口内创建类和在类内创建接口有什么用   java向文件写入错误Android Studio   java合并多个RealmList并对结果列表排序?   谷歌API视觉java。lang.NoSuchMethodError   java如何使用逗号分别存储每个值,然后将它们存储到单独的数组中?