Der*_*rek 13 bash shell scripting time
我想用time命令运行一些可执行文件
time myexec -args
Run Code Online (Sandbox Code Playgroud)
如何在bash中仅将时间输出存储到变量中?这是我关心这个脚本的唯一部分,而不是可执行文件的输出.有没有办法获得该值,还是我必须解析整个命令的文本?
Pau*_*ce. 20
time
在变量中捕获的所有输出(stdout,stderr和):
var=$( { time myexec -args; } 2>&1 )
Run Code Online (Sandbox Code Playgroud)
输出到stdout和stderr转到正常位置:
exec 3>&1 4>&2
var=$( { time myexec -args 1>&3 2>&4; } 2>&1 ) # Captures time only.
exec 3>&- 4>&-
Run Code Online (Sandbox Code Playgroud)
像这样的东西?
TIME="$(sh -c "time myexec -args &> /dev/null" 2>&1)"
Run Code Online (Sandbox Code Playgroud)
实际上,我也发现了这个 - How to store a substring of the output of "time" function in bash script
可能更接近我正在寻找的东西