文章目录
-
- 一、概述
-
- 1)pssh
- 2)pscp
- 二、pssh 工具安装
- 三、pssh 命令的基本语法
- 四、pscp 工具安装
-
- 1)Windows 上安装
- 2)Linux 系统上安装
- 五、 pscp 命令的基本语法
-
- 1)从 windows 向 linux 传文件
- 2)从 linux 传文件到 windows
一、概述
pssh 和 pscp 都是用于在计算机网络中进行批量操作的工具,但它们分别用于执行命令和传输文件。以下是关于这两个工具的概述:
1)pssh
pssh 是 “Parallel SSH” 的缩写,用于在多台远程服务器上并行执行命令。
- 它可以让你在一次命令中同时在多个远程服务器上执行相同的任务,如更新软件、运行脚本或收集信息。
- 适用于集中管理和批量操作多台服务器,可以提高效率。
- 支持设置并发度,控制同时执行连接和命令的服务器数量。
2)pscp
- 它类似于 scp,但特别适用于 Windows 平台。
- 允许在命令行下进行文件传输,可以用于从本地主机向远程主机上传或下载文件。
- 支持递归传输目录和子目录,可以通过命令行参数设置传输的选项。
总之,
二、pssh 工具安装
sudo yum install pssh
请注意,安装命令可能会因操作系统版本和软件库的不同而有所变化。
如果你需要手动下载和安装 pssh,可以访问 pssh 项目的官方源代码库或发布页面。你可以在以下链接中找到相关信息:
- pssh GitHub 项目页面:https://github.com/lilydjwg/pssh
- pssh 发行页面:https://pypi.org/project/pssh/
三、pssh 命令的基本语法
pssh -h hosts.txt -l username -A -i "your-command"
在 pssh 命令中,有许多参数可以帮助你控制并定制你在远程服务器上执行的任务。以下是一些常见的 pssh 命令参数的讲解:
-
-h <hosts-file> :指定包含要连接的远程服务器主机名或 IP 地址的文本文件。每行一个主机。 -
-l <username> :指定用于 SSH 连接的用户名。 -
-A :启用交互式模式,要求输入 SSH 密码。如果你使用公钥认证,可以省略这个参数。 -
-i --inline <command> :每个服务器的内联聚合输出和错误,-i 可以省略,省略则没有远程命令执行的输出。需要将命令用引号括起来。 -
-p <parallel-count> :指定并行连接的数量。这决定了同时连接的远程服务器数目。默认的并发数(也称为并发度)通常是 32。 -
-O <option> :设置 SSH 连接选项。可以使用多次以设置不同的选项。 -
--timeout=<seconds> :设置 SSH 连接的超时时间,以秒为单位。 -
-v :增加命令的详细输出。可以使用多次以获得更详细的信息。 -
-t <timeout> :设置每个远程命令的超时时间,以秒为单位,默认的超时时间是2 秒。(0 = no timeout) -
--help :显示帮助信息,列出所有可用的参数和其用法。
这些是一些常见的参数,还有其他更多的参数和选项可用于定制 pssh 命令的行为。为了获得详细的参数说明和示例,你应该查阅 pssh 的官方文档或使用命令行中的 --help 参数来获取帮助信息。不同版本的 pssh 可能会有略微不同的参数和功能,所以最好参考最新的文档来获得准确的信息。
示例用法:
# pssh -h hosts.txt -l myuser [-A] -i "sudo yum update && sudo yum upgrade -y" pssh -h iplist -l root -i "hostname" # - `-p <parallel-count>`:指定并行连接的数量。这决定了同时连接的远程服务器数目。默认的并发数(也称为并发度)通常是 32。 pssh -h iplist -l root -p 10 -i "hostname" # -o,将结果输出对应的目录下,每个主机一个独立的文件,例如:cat /tmp/outdir/local-168-182-110 pssh -h iplist -l root -o /tmp/outdir -i "hostname" # `-O <option>`:设置 SSH 连接选项。可以使用多次以设置不同的选项。 # 例如,你可以使用 -O "StrictHostKeyChecking=no" 来禁用 SSH 主机密钥的严格检查。 pssh -h iplist -l root -O "StrictHostKeyChecking=no" -o /tmp/outdir -i "hostname"
在这个示例中,
需要注意的是,在使用之前,你需要在系统上安装 pssh。它通常可以通过 Linux 发行版的包管理器进行安装。另外,pssh 可能还有更高级的功能和选项,超出了本文所介绍的内容,所以请务必查阅文档,全面了解其功能。
四、pscp 工具安装
1)Windows 上安装
前往 PuTTY 官方网站的下载页面:https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html
下载 PuTTY 安装程序,通常是一个 .msi 文件。
运行下载的安装程序,按照安装向导的指示进行安装。安装过程中可能会询问你是否要安装其他 PuTTY 工具,例如 pscp、plink 等。请确保选择安装这些附加工具。
2)Linux 系统上安装
sudo yum install putty
五、 pscp 命令的基本语法
以下是一些常见的 pscp 命令参数的讲解:
命令用法: pscp [参数] 源文件1 [源文件2…] [用户名@]服务器地址:目标文件
命令用法: pscp [参数] [用户名@服务器地址]:源文件 目标文件
以下是一些常见的 pssh 命令参数的讲解:
-r 递归拷贝目录-P port 指定服务器的端口-pw passw 指定密码-i key 如果有putty的ssh登录文件ppk可以在此指定
1)从 windows 向 linux 传文件
【命令用法:】pscp [参数] 源文件1 [源文件2…] [用户名@]服务器地址:目标文件
示例如下:
# 1、传单个文件 pscp 111.txt [email protected]:/root/ # 2、传多个文件 pscp 111.txt 222.txt [email protected]:/root/ scp /home/person/hww/abc.sql [email protected]:/home/person/hww # 3、传文件夹,传文件夹需要加上参数-r pscp -r mywindir [email protected]:/root/
【温馨提示】不支持通配符。
2)从 linux 传文件到 windows
【命令用法】pscp [参数] [用户名@服务器地址]:源文件 目标文件
示例如下:
# 1、传单个文件,从Linux 机器上拉取文件 pscp [email protected]:/root/001.cpp ./ # 2、传多个文件,从Linux 机器上拉取文件 pscp [email protected]:/root/*.cpp ./ # 3、传文件夹,传文件夹需要加上参数-r pscp -r [email protected]:/root/mydir ./ # 4、PS 指定端口 pscp -P 222 [email protected]:/root/001.cpp ./
pssh 工具用的比较多,pscp用得比较少,这两个工具的介绍就先到这里了,有任何疑问请关注我公众号: