问题,一些命令输出无法定向到文件
real 0m0.000s
user 0m0.000s
sys 0m0.000s
执行后没有将输出打印到a.txt文件 time是shell关键字,将time 后面一整行作为命令执行了,
root@cloud01:~# time ls > a.txt
real 0m0.002s
user 0m0.000s
sys 0m0.000s
将ls命令输出定向到a.txt了,time的输出依然打印出来了
root@cloud01:~# { time ls >b.txt; } 2>a.txt
root@cloud01:~# cat a.txt
real 0m0.002s
user 0m0.000s
sys 0m0.000s
发现time执行的输出定向到a.txt了,ls的输出定向到b.txt了 大括号代表了另起了一个shell,应该比较占资源
root@cloud01:~# (time ls >b.txt) 2>a.txt
root@cloud01:~# cat a.txt
real 0m0.002s
user 0m0.000s
sys 0m0.000s
用括号将命令分隔,同样定向了命令的输出,我们的shell经常会遇到一些命令执行了无法打印输出到指定的文件可以考虑这么做