0

我有 3 台机器(A、B 和 C)连接到路由器。A、B 和 C 在同一个子网中。所有这三台机器都使用 STAF 互连。我使用机器 A 作为 FTP 服务器和机器 B 作为 FTP 客户端。使用来自机器 CI 的 STAF 命令正在机器 B 上启动 FTP 程序(TCL 脚本)。

现在的问题是,C 如何知道 FTP 流量是否在 A 和 B 之间流动?

4

2 回答 2

0

ftp 包允许您在命令中指定进度监视器回调ftp::Open

package require ftp

proc progressMessage {bytesSoFar} {
    puts "Transferred $bytesSoFar; looking good..."
}
set handle [ftp::Open $A $user $pass -progress progressMessage]

# Everything after this is just standard for the ftp package
if {$handle < 0} {
    error "could not connect"
}
if {![ftp::Get $handle $remoteFile $localFile]} {
    ftp::Close $handle
    error "could not transfer"
}
ftp::Close $handle
puts "Transfer completed"

这将在每次传输块时打印一条消息(块大小可在选项中配置为ftp::Open通过-blocksize选项;默认情况下为 4096)。在现代网络上,这可能会非常快速地写入消息……</p>

于 2013-09-18T19:37:20.013 回答
-1
package require ftp
set handle [::ftp::Open $host $user $passwd]
if {$handle < 0} {
    error "Connection refused!"
    return 0
}
于 2013-09-18T04:39:04.600 回答