Inotfiy 监视特定文件上传,然后通过 ftp 按相同顺序上传所有文件
Inotfiy to watch for a specific file upload , then upload all files in same sequence via ftp
我有这样的需求:
客户端通过 SFTP 将 csv 文件上传到文件夹中。如果这些是完整的,客户端将上传一个 "trigger" 文件以指示上传完成。我尝试使用 inotifywait 等待这个触发文件,然后以相同的顺序将所有 csv 文件和这个 "trigger" 文件上传到另一个 ftp 服务器 - 即。首先是 csv 文件,然后是触发文件。
我当前的脚本只是将首先上传的任何文件上传到 ftp 服务器,而忽略其余文件。
我的 bash 不是很好,但我正在尝试....
#!/bin/bash
HOST='192.168.1.100'
USER='TESTUSER1'
PASSWD='password1'
FILE='\*\.csv'
TRIGGER='trigger.txt'
while TRIGGER=$(inotifywait --format '%f' -e close /home/testuser1/uploads/ ); do
ftp -n $HOST << EOT
user $USER $PASSWD
cd /home/testuser1/sftptest/
put $FILE
put $TRIGGER
quit
EOT
done
rm /home/testuser1/uploads/*.*
我变了
while TRIGGER=$(inotifywait --format '%f' -e close /home/testuser1/uploads/
到:
while TRIGGER=$(inotifywait --format '%f' -e close /home/testuser1/uploads/trigger.txt
简单的错误
我有这样的需求: 客户端通过 SFTP 将 csv 文件上传到文件夹中。如果这些是完整的,客户端将上传一个 "trigger" 文件以指示上传完成。我尝试使用 inotifywait 等待这个触发文件,然后以相同的顺序将所有 csv 文件和这个 "trigger" 文件上传到另一个 ftp 服务器 - 即。首先是 csv 文件,然后是触发文件。 我当前的脚本只是将首先上传的任何文件上传到 ftp 服务器,而忽略其余文件。 我的 bash 不是很好,但我正在尝试....
#!/bin/bash
HOST='192.168.1.100'
USER='TESTUSER1'
PASSWD='password1'
FILE='\*\.csv'
TRIGGER='trigger.txt'
while TRIGGER=$(inotifywait --format '%f' -e close /home/testuser1/uploads/ ); do
ftp -n $HOST << EOT
user $USER $PASSWD
cd /home/testuser1/sftptest/
put $FILE
put $TRIGGER
quit
EOT
done
rm /home/testuser1/uploads/*.*
我变了 while TRIGGER=$(inotifywait --format '%f' -e close /home/testuser1/uploads/ 到: while TRIGGER=$(inotifywait --format '%f' -e close /home/testuser1/uploads/trigger.txt
简单的错误