我正在使用 Expect 和 lftp 构建生产站点更新脚本。
我有时会尝试做这个简单的事情:发送一个文件并覆盖它(如果存在)。但我只是找不到允许我覆盖放置目的地的命令。如果是同一个文件,则 put -c 会继续。但如果它不同,它什么也不做。
我真的必须检查文件是否存在并将其删除才能将文件放入服务器吗?没有直接命令吗?
如果这是唯一的选择,那么还有一件事我找不到:查看文件是否存在的命令。我唯一的选择是处理 ls 的输出?
如果有另一个 ftp 客户端允许我以更简单的方式完成这些操作,我也接受建议。
最佳答案
LFTP 为 put
提供了一个参数,它是小写的 e
。
这允许您在上传文件之前删除文件,而不是覆盖选项(LFTP 似乎本身并不支持)。像 prompt
这样的东西可能是可用的,但如果我们严格讨论 LFTP,我建议使用该选项,ala:
put -e file.txt
关于lftp - 使用 LFTP 如何将特定文件发送到服务器并覆盖该文件(如果存在)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53438482/