【转】 time--shell保留字输出无法重定向解决
来源:互联网 发布:在主函数前定义数组 编辑:程序博客网 时间:2024/06/05 06:44
话说time是一个bash的保留字。别人这样讲,但是我没有看出来是为什么这样讲,经查time命令是time包中的一个文件。我不知道这样讲(保留字)的目的,但是运行测试,这个命令(time)的确有点特殊。
正常运行time命令:
[root@dy dic]# time sleep 5
real 0m5.001s
user 0m0.001s
sys 0m0.000s
我们重定向命令输出:
[root@dy dic]# time sleep 5 >out.txt
real 0m5.001s
user 0m0.002s
sys 0m0.001s
屏幕仍然输出,且out.txt文件为空,重定向失败。
使用time sleep 5 2>out.txt命令测试仍然无效。大概上面这个情况就是time成为bash保留字的理由,据说因为这个命令的一些特殊性,所以要求它要以一种特殊的形式运行。那么我们该如何解决类似此种的号称为保留字的命令输出不可重定向的问题呢?
那天刚好看到了一篇博文如此介绍。因为time作为保留字的原因导致它按常规方式输出不可被重定向,我们可以通过让它运行在子shell(subshell)形态下,这样我们就可以正常的重定向它的输出了。
在console下,两种让命令运行在子shell的方式是给命令加小括号和加大括号。按这样最终实现如下:
1 ( time sleep 5 ;) 2> out.txt
2 { time sleep 5;} 2>out.txt
注:time命令正常的输出是stderr(所以要在重定向是加2)。
经测试上面两种方式都有效。
附:
关于管道的资料可以参考bash的man手册中pipeline一节。
关于time的更多资料参考time的man手册
正常运行time命令:
[root@dy dic]# time sleep 5
real 0m5.001s
user 0m0.001s
sys 0m0.000s
我们重定向命令输出:
[root@dy dic]# time sleep 5 >out.txt
real 0m5.001s
user 0m0.002s
sys 0m0.001s
屏幕仍然输出,且out.txt文件为空,重定向失败。
使用time sleep 5 2>out.txt命令测试仍然无效。大概上面这个情况就是time成为bash保留字的理由,据说因为这个命令的一些特殊性,所以要求它要以一种特殊的形式运行。那么我们该如何解决类似此种的号称为保留字的命令输出不可重定向的问题呢?
那天刚好看到了一篇博文如此介绍。因为time作为保留字的原因导致它按常规方式输出不可被重定向,我们可以通过让它运行在子shell(subshell)形态下,这样我们就可以正常的重定向它的输出了。
在console下,两种让命令运行在子shell的方式是给命令加小括号和加大括号。按这样最终实现如下:
1 ( time sleep 5 ;) 2> out.txt
2 { time sleep 5;} 2>out.txt
注:time命令正常的输出是stderr(所以要在重定向是加2)。
经测试上面两种方式都有效。
附:
关于管道的资料可以参考bash的man手册中pipeline一节。
关于time的更多资料参考time的man手册
- 【转】 time--shell保留字输出无法重定向解决
- time--shell保留字输出无法重定向解决
- 重定向Shell关键字time
- shell中输出重定向
- shell中的输出重定向
- shell输出重定向操作
- Shell 输入/输出重定向
- Shell 命令重定向输出
- Shell 输入/输出重定向
- shell基础-输出重定向
- shell 输入 输出重定向
- Shell输入/输出重定向
- Shell 输入/输出重定向
- Shell 输入/输出重定向
- Shell 输入/输出重定向
- Shell 输入/输出重定向
- Shell 输入/输出重定向
- shell 输入/输出重定向
- 手动方式更新变动的dataset 保存到数据库(非控件)
- Part Two: How to Kite with a Ranger in Aion
- 读书笔记(六)核心测试过程:计划,准备和完善
- HTTP 错误代码含义
- ORACLE TRUNC()函数
- 【转】 time--shell保留字输出无法重定向解决
- .net web,dropdownlist 控件取不到选中的项
- 内核对象空间
- tomcat下JNDI的配置和读取方法
- 数据库隔离级别
- 水晶报表创建过程
- 关于C++学习的几个建议
- Spring事务配置的五种方式
- USB HID 设备驱动程序设计