如何使用curl模拟大文件的ftp传输?

问题描述 投票:-1回答:2

我想检查与FTP服务器的FTP连接。为此,我想传输一个大文件(例如10 G)以检查我的FTP连接。

但是要做到这一点,我必须生成一个10 G的大文件。这不好,尤其是在我的设备没有足够的内存/磁盘的情况下。因此,我想模拟大文件(例如10 G)的传输,而不生成10G文件。

可以使用curl命令吗?

linux bash shell curl libcurl
2个回答
0
投票

[使用FTP,假设客户端和服务器具有较小的RT延迟,则在相同的打开连接上发送10G将花费与发送100M 100M文件相同的数量。希望您的设备可以分配那么多空间。

关键是避免重新打开连接。执行以下操作以保持连接打开。

X=ftp://server/path/to/100M
X100=$(for i in {1..100} ; do echo " " $X ; done }
curl $X100

0
投票

'truncate'(命令行工具)是您的朋友。它可以创建"sparse"huge文件,这意味着长零序列仅仅是一个孔,实际上不会占用驱动器上的空间。

因此,您可以在一个小得多的文件系统和硬盘驱动器中创建10G文件(包含全零)(在Linux上运行:]

$ truncate --size=10G bigfile
© www.soinside.com 2019 - 2024. All rights reserved.