我有一个命令,每隔 10 分钟左右就会生成不同的文件。
我想将这些文件上传到 FTP 服务器。如果 command1 中的文件存储在本地,那么我可以稍后上传它们。但我不想在本地创建文件。
例如执行后命令1,它生成文件,即 file1、file2 等。如果此命令生成单个文件,那么我可以执行:
command1 | ftpput -u user -p pass 192.168.1.1 remote_file local_file
有没有办法将动态生成的文件上传到FTP服务器?
答案1
使用保险丝文件系统卷曲文件系统将远程文件系统挂载到您的命令正在其中创建文件的目录中。然后新文件将透明地写入(通过curl ftp 命令)到远程。看man curlftpfs
。
例如,如果您的命令在 /a/b/
then中创建文件
$ curlftpfs -o user=user:pass 192.168.1.1 /a/b
将遥控器安装在/a/b
。将ls /a/b
列出远程 ftp 目录顶部的文件。请注意,您可以对本地文件执行的操作有一些限制(由于 ftp 协议),例如您不能附加到文件。