每个月我们都会使用 FTP 向服务器发送报告。我们在数据库上运行查询以创建文件,然后使用 LabVIEW 中的 ftp 功能进行传输。这在 Windows 系统上运行。
这工作正常,但现在我们必须切换到使用 SFTP,并且建议使用CopSSH包。由于 LabVIEW 没有本地 SFTP 功能,我们正在研究如何使用 CopSSH 中的 sftp.exe 应用程序。
在命令提示符下,我们设置了加密并使用sftp username@host
并输入了密码进行了初始连接。服务器端的团队已经确认了这一点,因此建立了与服务器的连接。现在我们只需使用sftp username@host
,不需要密码。
我们正在苦苦挣扎的是如何从我们的 LabVIEW 代码中启动传输。我们可以使用 System Exec VI 调用系统命令,但有没有办法将函数列表传递给SFTP
可执行文件?
当我们在命令提示符下键入文件时,用于传输文件的命令是:
sftp username@host
put c:/Data/File1.txt remoteFile1
put c:/Data/File2.txt remoteFile2
put c:/Data/File3.txt remoteFile3
quit
这适用于命令提示符,但我希望只调用带有要传输的文件列表的 sftp 可执行文件。我认为这不是LabVIEW特有的,因为您可以使用批处理文件从计划的作业中运行。
LabVIEW 可以调用 ActiveX 和 .net,但我们确实需要使用这个特定的应用程序。