我正在使用Expect和lftp构建生产站点更新脚本。
我正在尝试做一些简单的事情:发送文件覆盖(如果存在)。但是我只是找不到允许我覆盖目标位置的命令。如果它是同一文件,则put -c仅继续。但是,如果有所不同,它什么也不做。
我真的必须检查文件是否存在并将其删除以便将文件放入服务器吗?没有直接命令吗?
如果这是唯一的选择,那么我找不到另一件事:查看文件是否存在的命令。我唯一的选择是对待ls的输出?
如果还有另一个ftp客户端允许我以更简单的方式执行这些操作,我也接受建议。
答案 0 :(得分:1)
LFTP为put
提供了一个参数,该参数是小写的e
。
与覆盖选项(LFTP本质上不支持该选项)相比,这允许您在上传文件之前删除文件。像prompt
这样的东西可能可用,但是如果我们严格讨论LFTP,我建议使用该选项ala:
put -e file.txt