问题标签 [ssh2-sftp]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
5445 浏览

ftp - sFTP 文件中缺少“回车”

到目前为止,我们正在通过普通 FTP 将文件从大型机传输到 Windows 系统(客户端系统)。我的客户正在接收每个文件末尾带有“回车”(CR)和“换行”(LF)的文件。

现在我们正在将传输机制更改为sFTP..以下是我正在遵循的步骤1.将PS文件复制到Mainframe的OMVS系统。2. 运行 sFTP 命令并将文件发送到客户端系统。

现在的问题是..我的客户连同我的客户只收到每行的 LF ant 结尾的数据..CR 丢失..我尝试了 sftp 脚本中的“ascii dos unix”和“SBSENDEOL CRLF”等选项在JCL ..但没有运气

下面是我正在运行的脚本

以下是他们期望文件的样子

预期格式文件

但这就是我运行上面粘贴的脚本时接收文件的方式

在此处输入图像描述

请让我知道是否有实现 CR 和 LF 的选项。

0 投票
2 回答
1694 浏览

javascript - 如何计算远程服务器上的磁盘空间并使用 ssh2 和 node.js 存储值?

目前我正在使用 SSH2 和 node.js 来监控远程服务器上的磁盘空间和分区。并将输出打印到控制台。但是输出是字符串格式,所以我不能在任何变量中存储可用空间/总空间值。当前,我正在使用node.js(ssh2)中的con.exec运行df -k命令,以使用凭据在远程服务器上运行命令。

  1. 那么这怎么可能(将磁盘空间存储在变量中)。
  2. 我的最终任务是检查远程服务器上的磁盘空间,如果小于 25%,则生成警报。
  3. 而且对于 HTML 部分,我正在使用 AngularJs。所以我必须在网页上提供一个按钮来强制检查并为用户生成警报。

我在下面添加了我通过控制台(两者)接收的输出格式

Shell 控制台输出 浏览器控制台输出

0 投票
1 回答
280 浏览

java - 哪个对 sftp 更有效:java 还是 shell 脚本?

我们每分钟向几台服务器发送数百个文件。

目前我们正在生成仅包含 sftp 命令的 shell 脚本(通过 java 作为文件)并将它们作为 shell 脚本执行。我们使用java的原因是根据目标路径和目标服务器来组织文件。最后,对于每个目标服务器,我们将拥有一个 shell 脚本。

现在我在想,如果我通过java代码本身发送文件而不是生成脚本并执行它,它会更加高效和快速

目前为 4 台服务器生成脚本需要 4 到 5 秒。因此,实际 sftp 的执行从第 5 秒开始并且非常快地完成(基于文件数)。如果我切换到像 JSch 这样的 java sftp,它会和 shell 脚本中的 sftp 一样快还是更慢?

0 投票
1 回答
901 浏览

networking - 是什么让 SFTP 和 SCP 协议的吞吐量不同

在 Windows 中,我使用 sftp 和 scp(安全复制协议)传输了一个数据文件(8GB)并得到如下结果:

链接速度为 1000 Mbps

我通过 SSHv2 协议从 Wireshark 过滤器获取这些数据

计算吞吐量 = 数据大小/时间(秒)

这是两个协议的吞吐量

我是网络新手。我不知道是什么让这些协议的吞吐量不同?我认为这与交互式和非交互式无关,因为在调试文件中,我在传输文件时看到命令行是相同的。谁能给我解释一下?

0 投票
1 回答
1739 浏览

php - 尝试在 php 中使用 ssh2_scp_recv 将目录的所有内容从一台服务器获取到另一台服务器

下面的脚本运行成功。

从一台服务器获取文件到另一台服务器

但是为了获取静态文件,我想获取包含所有内容的文件夹。

在上面的例子中,我想获取到本地服务器的目录是“15721022890870”

我试过下面的代码但不起作用,

远程服务器有目录,但本地服务器没有,所以我想制作目录,然后将其所有内容复制到里面

0 投票
2 回答
2815 浏览

php - 通过代理 PHP 的 SSH 连接

是否可以使用 php 通过代理建立 ssh 连接?

我的php代码是

但它在下面给出了一个错误

我也无法通过命令行建立 ssh 连接。

解决方案(失败)

然后我找到了解决方案。我创建了**~/.ssh/config**文件并向其中添加了代理定义。

之后我能够通过命令行连接到 ssh :)

但我仍然无法连接 php 代码。我仍然得到同样的错误:(

这里的问题是该ssh2_connection函数不使用 ssh 配置文件。有没有办法告诉函数使用它?

0 投票
0 回答
895 浏览

php - 将 SSH2 扩展添加到 MAMP PRO

我正在尝试将 ssh2 扩展添加到 MAMP PRO,但没有成功。任何帮助,将不胜感激!

我已经完成了两个教程,但都没有成功添加 ssh2。

完成教程后,我检查了我的 PHP 信息页面,但没有找到有关 SSH2 的信息。

我正在使用 OS X Yosemite 版本 10.10.5、MAMP PRO 版本 3.5 和 PHP 版本 5.6.10

0 投票
2 回答
202 浏览

php - 带有公钥的 SFTP 失败且没有错误

我正在使用SSH-DSS密钥,端口是2222. 我可以使用公钥/私钥(peagent)和用户名从我的机器通过winscp进行连接。(私钥没有密码)

但是当我尝试使用 PHP 脚本时它不起作用。没有错误信息。ssh2_auth_pubkey_file()返回blank/ false。所以脚本以

公钥认证失败

有什么方法可以调试错误吗?

公钥/私钥是使用 puttygen 生成的。

这是我正在使用的代码片段:

0 投票
1 回答
2350 浏览

node.js - 使用 ssh2 sftp 节点读取更大的 sftp 文件

我正在尝试使用 ssh2-sftp 库在 Node.js 中读取/写入文件。当我在 sftp 站点上对较大的 CSV 文件(但不是太大 - 仅像 2 MB)执行 sftp.get,然后在返回的流上读取数据时,在第 14 个 stream.on 之后呼叫挂在我身上(“数据”)调用。我已经用几个不同的示例文件对此进行了测试,并且代码在较小的文件上运行良好。但是,如果 CSV 文件足够大,可以通过第 14 次调用,它就会挂起,就好像它无法再读取一样,即使还有更多内容要读取。而且 stream.on("close") 永远不会被调用。

显然,这是非常奇怪的行为。希望也许有人使用这个库遇到了类似的事情并得到了一些指导。

如果它有帮助,这里有一些代码

在第 14 次调用 readStream.on("data") 之后,它就冻结了。可能读取了一半的文件。

0 投票
0 回答
416 浏览

batch-file - CMD,使用 cmd 命令连接到 SFTP 并从那里复制文件

我知道如何使用“pushd”连接到本地网络驱动程序。但是一些客户端文件在 sftp 服务器上。

我想简化一些工作,但无法很好地连接到 clent sftp。

我对 WinSCP 很感兴趣,无法理解它的工作方式。(因为“打开”命令在 cmd 中不被识别。)