0
我想将所有更改的文件上传到我的FTP服务器。但是,当我使用-bb
标志时,我不能使用-S .tmp
和-v
- 我无法在ncftpbatch
之间使用这些选项。这里是我的代码:NcFTP -S与-bb
#!/bin/bash -eo pipefail
IN=$(git diff-tree --no-commit-id --name-only -r HEAD)
OUT=$(echo $IN | tr ";" "\n")
for file in "${OUT[@]}"; do
ncftpput -bb -S .tmp -v -u "[email protected]" -p "*****" ftp.kolechia.heliohost.org "/" $file
done
ncftpbatch
正如你所看到的,我需要的-S .tmp
避免上传过程中打破了现场。 -v
提供输出以防止我的CI服务超时。
如何仅上载更改的文件 - 不暂时中断网站?我正在考虑为每个文件分别登录,但这是不好的做法。
为什么不能在后台启动一个函数,它只是打印出的伪值“如上传,请等待“,然后睡几秒钟再重复一次。在循环之外,您可以杀死该后台作业。 –
@TarunLalwani我的程序输出的所有内容都由CI服务器缓存 - 如果作业失败,那么它都会通过电子邮件发送给我。我不希望收件箱中包含“正在上传,请稍候...正在上传,请稍候...”。不过,这是个好主意。 – StellarDoor5319
你可以试试'printf'\ 0“'或'printf”a \ b“'看看是否有帮助。这不会添加不必要的信息 –