创新路
我们一直在努力

Shell学习(二阶#四)

Shell学习(二阶#四)

永久性重定向exec

一、基础知识

1、永久性重定向;


2、用它的原因:

1594885520612686.png

      echo 命令使用了重定向,将内容输出到 test.txt 文件。

      有些脚本文件的输出内容很多,我们需要把输出内容备份到文件中,方便以后检索,按照上面的思路,必须在每个命令后面都使用一次重定向,写起来非常麻烦。如果以后想修改重定向的方向,那工作量也是不小的。

      exec 命令就是为解决这种困境的,它可以让重定向对当前 Shell 进程中的所有命令有效。

3、语法

exec > 文件名 或者 exec >> 文件名


二、例子

1594885642137662.png

分析:

1、exec > test.txt 是指定重定向的位置;

2、由于重定向到test.txt文件,所以后面两个echo输出的内容不会显示在屏幕上,而是记录到了test.txt文件中,通过后面的cat test.txt可以看出来;

3、exec >&2 是固定语法,表示结束重定向。(>&2的“>”后面不能有空格,不然要报错。)


三、关联之前的文章来分析

1594886034974669.png

首先,$logfile是定义了的变量。

exec >> $logfile 就是重定向到/tmp/XXXXX.log文件中,那么后面的输出数据均记录到此文件中,并且“>>”代表追加。

未经允许不得转载:天府数据港官方信息博客 » Shell学习(二阶#四)

客官点个赞呗! (0)
分享到:

评论 抢沙发

评论前必须登录!

天府云博 - 做有态度的开发&运维&设计学习分享平台!

联系我们百度云主机