我有一个非常长的 bash 脚本,它在后台执行一些操作(不产生任何输出)。
我想知道哪些行/部分占用了最多的执行时间。
我可以使用某种工具/功能/linux内置来实现吗?
我有一个非常长的 bash 脚本,它在后台执行一些操作(不产生任何输出)。
我想知道哪些行/部分占用了最多的执行时间。
我可以使用某种工具/功能/linux内置来实现吗?
当我过去不得不这样做时,我使用了这种格式:( time echo "hello" ) 2>>output.txt
对脚本中的每一行执行此操作,以便为每一行计时。
我可以在这里想到两种方法。
1) 记录每个命令或函数的启动时间并输出到日志文件
# echo "$(date) : Started function_x" >> $LOGFILE
2)计算出每个函数/任务花费的秒数并记录下来。
startTime=$(date +%s)
longRunningFunction
endTime=$(date +%s)
echo "longRunningFunction took $(expr $endTime - $startTime) seconds" >> $LOGFILE