Skip to content

Commit

Permalink
修改readme
Browse files Browse the repository at this point in the history
  • Loading branch information
llody55 committed Oct 31, 2023
1 parent 197a56c commit a3727d2
Showing 1 changed file with 5 additions and 9 deletions.
14 changes: 5 additions & 9 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,30 +4,26 @@

使用 Golang 语言编写的基于 SSH 协议的工具,旨在执行远程主机文件分发和命令执行功能。

#### 安装教程
#### [下载地址](https://github.com/llody55/gosible/releases)

### 功能概述

1. **主机信息解析**

* 从指定的文件中读取主机信息(IP、端口、用户名、密码),并将其解析为 `HostInfo` 结构体。

2.**并发执行**

2.**并发执行**
* 采用并发模型,允许并行处理多个主机上的任务。通过 `sync.WaitGroup` 控制并发数量,避免过载远程主机。
* 使用 `sync.WaitGroup` 和通道来管理并发执行的主机任务数量,以避免过度消耗资源。

3.**文件传输**

3.**文件传输**
* 使用 SSH 和 SFTP 客户端(`golang.org/x/crypto/ssh``github.com/pkg/sftp` 包)实现文件在本地和远程主机之间的传输。
* `copyFileUsingSFTP` 函数负责文件传输。该函数通过 SSH 连接创建 SFTP 客户端,并将本地文件复制到远程主机。

4.**远程命令执行**

4.**远程命令执行**
* 提供功能以执行指定的命令或脚本文件在远程主机上。`checkHost` 函数使用 SSH 连接执行特定命令,并返回结果。

5.**命令行参数**

5.**命令行参数**
* 通过命令行参数指定主机文件路径、远程命令、以及要复制的文件路径。

### 结构和主要函数
Expand Down

0 comments on commit a3727d2

Please sign in to comment.