Bash命令时间输出到.txt

问题描述 投票:0回答:1

您好,我有一个bash脚本,打算用来测量脚本download_test.sh的经过时间,CPU%和内存使用情况,并将输出放入具有所需输出的.txt文件中,例如:

Elapsed time: 1263.75s
Memory usage: 62916 KB
CPU usage: 0%

执行此操作的脚本如下:

#!/bin/bash
echo 'RESULTS' >> log.txt
{ /usr/bin/time -f 'Elapsed time: %es\nMemory usage: %M KB\nCPU usage: %P' bash download_test.sh  1 ; }  2>> log.txt

但是下载终端的进度也直接指向.txt文件,

RESULTS

Downloading:  95%|#########5| 827M/870M [00:00<?, ?B/s]
Downloading:  95%|#########5| 828M/870M [00:00<00:11, 3.68MB/s]
...
Elapsed time: 14.67s
Memory usage: 62592 KB
CPU usage: 0%

我不熟悉stderr和stdout,所以我误解了它们,如何解决此问题?

bash unix stdout ubuntu-18.04 stderr
1个回答
0
投票

我不认为这是stderr。您可以使用以下命令来打印所需的行。

awk '/Elapsed/,/CPU/'

© www.soinside.com 2019 - 2024. All rights reserved.