cURL - 通知上传进度

时间:2013-06-18 20:04:27

标签: bash file-upload curl automation

我在Xcode中有脚本,它在归档操作结束时自动运行。它正在签署并向TestFlight服务提交构建。问题是上传需要花费很多时间,而且我看不到任何进展。

作为通知程序,它使用的是Apple脚本通知程序:

notify () {
    /usr/bin/osascript -e "display notification \"$1\" with title \"Xcode\""
}
notify "Uploading to TestFlight"

cURL上传在这里完成:

/usr/bin/curl "http://testflightapp.com/api/builds.json" \
-F file=@"/tmp/${PRODUCT_NAME}.ipa" \
-F dsym=@"/tmp/${PRODUCT_NAME}.dSYM.zip" \
-F api_token="${API_TOKEN}" \
-F team_token="${TEAM_TOKEN}" \
-F notes="Build uploaded automatically from Xcode."

如果我能看到有关上传过程中10%,20等等的类似信息,我会很高兴。

这是完整的脚本:https://gist.github.com/ealeksandrov/5808692

1 个答案:

答案 0 :(得分:10)

将输出重定向到某处,进度条会显示出来。它在你的情况下被关闭的原因是你已经要求curl将下载的数据发送到stdout然后它会自动关闭进度表而不会弄乱输出。

因此,使用>重定向在shell中或使用curl的-o(小写字母o)或-O(大写字母o)选项之一。