我有一个脚本 hex.bat 有:
#!/bin/bash
HEX_ROOT=.
HEX_COLOURS=./data
HEX_PDB=.
HEX_MACROS=.
HEX_CACHE=./data
time ./hex6i.x64 -kill -nogui -ncpu 1 -ngpu 1 -e dock.mac -l job.log
除时间外,所有输出都转到job.log
。我想节省jog.log
执行此脚本的时间。有没有人有任何线索?
提前致谢。
time
将其输出写入标准错误,而不是标准输出,以便将报告放在不同的输出流中。例如,通常希望对正在将输出写入文件的程序进行计时,而不将时间输出放入日志中。
如果您确实希望时间输出进入日志,您有几个选择:
使用-o
和可能-a
的选项time
将输出写入time
日志文件。您的time
实现可能有也可能没有这些选项。
重定向标准错误:time .... 2>> job.log
或2>&1
。前者写入同一个日志文件(通过追加);后者将标准错误输出发送到标准输出的任何位置。请注意,两者都会影响运行的程序time
以及它time
本身。
我得到了使用括号
#!/bin/bash
HEX_ROOT=.
HEX_COLOURS=./data
HEX_PDB=.
HEX_MACROS=.
HEX_CACHE=./data
(time ./hex6i.x64 -kill -nogui -ncpu 1 -ngpu 1 -e dock.mac -l job.log) &> job.log