我们的监控脚本遇到问题。
程序的流程是
- 客户 ftp/sftp 文件(.csv 格式)到“源”目录
- Bash 脚本将完成的 .csv 文件重命名为 .aaa 文件
- 另一个 Bash 脚本将“.aaa”文件移动到“destination”目录并将文件重命名为“.csv”
- CAMEL 正在监视“目标”目录。如果任何文件到达“目标”文件夹并且扩展名不等于“.aaa”,它将开始处理该文件。
这里第 3 步失败了。Bash 脚本成功移动文件。但是在将文件从“.aaa”重命名为“.csv”时,CAMEL 会获取文件并开始处理。CAMEL 因错误“页脚不存在”而失败。这是因为“mv”命令未完成,并且在“mv”完成之前已处理 CAMEL。所以它处理了一个不完整的文件。
由于我们使用脚本,因此我们在使用命令方面几乎没有灵活性。我们正在使用 Linux “mv” 命令重命名文件。
有没有办法在重命名时将文件锁定在脚本中,这将阻止 CAMEL 访问它?
还是有更好的方法来处理这种情况?
提前感谢帮助。
谢谢, 马修 Liju