xshell执行结果到文本_linux重定向总结:如何将shell命令的输出信息自动输出到文件中保存...

在做批量实验室,例如跑批量MR的作业,我们会写好shell脚本,然后启动脚本,等所有作业执行完再去看结果,但是这些执行时的信息如何保存下来到文件中呢?下面这个命令可以完成这个任务。

sh batchjob.sh 2>&1 | tee mylog.log

其中sh batchjob.sh:表示要执行的shell脚步;0,1,2:在linux分别表示标准输入、标准输出和标准错误信息输出。

下面来总结下重定向问题。

输入输出重定向之:''

''分别用来支持linux中的输入输出重定向,其中''支持输出重定向。

1. '

sh test.sh < hadoop-hadoop-jobtracker-brix-00.out,将hadoop-hadoop-jobtracker-brix-00.out的内容作为test.sh的输入

2. '>':将内容全局覆盖式的加入文件,相当于删除该文件并重新建立该文件,再写入的效果

ls * > test.txt ,将ls * 的所有信息输出到文件test.txt中

3. '>!':如果存在则覆盖

4. '>&':执行时屏幕上所产生的任何信息写入指定的文件中

5. '>>':追加到文件中

6. '>>&':屏幕上的信息追加到文件中

标准输入输出

在 Linux 系统中:标准输入(stdin)默认为键盘输入;标准输出(stdout)默认为屏幕输出;标准错误输出(stderr)默认也是输出到屏幕(上面的 std 表示 standard)。在 BASH 中使用这些概念时一般将标准输出表示为 1,将标准错误输出表示为 2。下面我们举例来说明如何使用他们,特别是标准输出和标准错误输出。

tee命令

tee指令会从标准输入设备读取数据,将其内容输出到标准输出设备,同时保存成文件。

$ tee --help

Usage:tee[OPTION]... [FILE]...

Copy standard input to each FILE, and also to standard output.-a, --append append to the given FILEs, donot overwrite-i, --ignore-interrupts ignore interrupt signals--help display this help and exit--version output version information and exit

If a FILE is-, copy again to standard output.

Reporttee bugs to bug-coreutils@gnu.org

GNU coreutils home page:

General help using GNU software:

For complete documentation, run: info coreutils 'tee invocation'

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值