我知道你可以使用以下内容获得每个函数的编译时间:
xcodebuild -workspace App.xcworkspace -scheme App clean build OTHER_SWIFT_FLAGS="-Xfrontend -debug-time-function-bodies" | grep .[0-9]ms | grep -v ^0.[0-9]ms | sort -nr > culprits.txt
或者
defaults write com.apple.dt.Xcode ShowBuildOperationDuration -bool YES
但是如何在命令行中打印出总构建时间?
答案 0 :(得分:2)
一种稍微有效的方法 - 在这里我们只调用date
两次:
#!/bin/bash
start_time=$(date +%s)
# xcode command here
end_time=$(date +%s)
printf 'Elapsed time is %d seconds\n' $((end_time - start_time))
即使没有分叉也可以获得当前时间printf
:
#!/bin/bash
printf -v start_time '%(%s)T' -1
# xcode command here
printf -v end_time '%(%s)T' -1
printf 'Elapsed time is %d seconds\n' $((end_time - start_time))
答案 1 :(得分:1)
我想最简单的方法就是运行这样的东西:
#!/bin/sh
COMPILE_START=`date`
# your compile commands
COMPILE_END=`date`
printf "%s\n" $(( $(date -d "$COMPILE_END" "+%s") \
- $(date -d "$COMPILE_START" "+%s") ))
答案 2 :(得分:1)
假设它是一个bash命令:
startTime=$(date +%s)
#Your commands
finishTime=$(date +%s)
timeElapsed=$((finishTime - startTime))
minute=$((timeElapsed / 60))
sec=$((timeElapsed % 60))
echo Total time: $minute min $sec sec