【发布时间】:2009-09-21 04:44:40
【问题描述】:
我想计算使用 Curl 将一批文件提交到在 localhost 上运行的 HTTP 服务器并将其写入文件所需的时间。我无法正确获取语法。
export TIMEFORMAT="%R"
time -ao times.dat ( curl -v -d @1.batch -X POST $DB )
我怎样才能做到这一点?我想这只是使用 shell 语法的问题。
【问题讨论】:
我想计算使用 Curl 将一批文件提交到在 localhost 上运行的 HTTP 服务器并将其写入文件所需的时间。我无法正确获取语法。
export TIMEFORMAT="%R"
time -ao times.dat ( curl -v -d @1.batch -X POST $DB )
我怎样才能做到这一点?我想这只是使用 shell 语法的问题。
【问题讨论】:
指定time的完整路径(括号是不必要的):
export TIME="%e"
/usr/bin/time -ao times.dat curl -v -d @1.batch -X POST $DB
请注意,使用不同的环境变量和不同的说明符来获取经过的时间。
time 是 Bash 关键字,不支持选项 -a 或 -o。
/usr/bin/time 是一个外部二进制文件。
【讨论】:
time 不适合记录持续时间。
但你可以这样做:
date >> $LOGFILE
# your operation here
date >> $LOGFILE
如果您想监控每个文件的统计信息,那么您始终可以将 curl 包装在 for 循环中。
【讨论】:
time 的问题(除非它的实现不好 - 我会比较 Bash 的 @ 的输出/准确性987654326@ 与 /usr/bin/time 比较,看看问题是否相同,Cygwin 的“故障”,或者不同,一个或另一个的“故障”time)。