zoukankan      html  css  js  c++  java
  • exec操作文件描述符

    exec命令可以用来替代当前shell;换句话说,并没有启动子shell。使用这一命令时任何环境都将被清除,并重新启动一个shell。

    它的一半形式为:

        exec command

        其中,command通常是一个shell脚本。

        描述exec命令最贴切的说法是:它践踏了你当前的shell。

        当这个脚本结束了,相应的会话可能也就结束了。

        但是,exec在对文件描述符进行操作的时候(也只有在这个时候),它不会覆盖你当前的shell。

        下面举几个例子:

        1、exec 3</tmp/1.txt     //以“只读方式”打开/tmp/1.txt,文件描述符对应为3

        2、exec 3>/tmp/1.txt     //以“只写方式”打开/tmp/1.txt,文件描述符对应为3

        3、exec 3<>/tmp/1.txt    //以“读写方式”打开/tmp/1.txt,文件描述符对应为3

        4、exec 3<&-             //关闭文件描述符3

     

        附录:常见的文件重定向命令

        command > filename                      把标准输出重定向到一个新文件中

        command >> filename                    把标准输出重定向到一个文件中(追加)
        command 1 > fielname                       把标准输出重定向到一个文件中
        command > filename 2>&1                 把标准输出和标准错误一起重定向到一个文件中
        command 2 > filename                       把标准错误重定向到一个文件中
        command 2 >> filename                     把标准输出重定向到一个文件中(追加)
        command >> filename 2>&1              把标准输出和标准错误一起重定向到一个文件中(追加)
        command < filename >filename2        把command命令以filename文件作为标准输入,以filename2文件作为标准输出
        command < filename                          把command命令以filename文件作为标准输入
        command << delimiter                      把从标准输入中读入,直至遇到delimiter分界符
        command <&m                                 把文件描述符m作为标准输入
        command >&m                                 把标准输出重定向到文件描述符m中
        command &m<&-                             关闭文件描述符m

  • 相关阅读:
    洛谷
    洛谷
    NOIP 普及组 2014 螺旋矩阵
    NOIP 普及组 2014 珠心算测验
    hdu 1114Piggy-Bank(完全背包)
    hdu 2059龟兔赛跑("01"背包)
    洛谷 P1282 多米诺骨牌("01"背包)
    洛谷 P1140 相似基因(DP)
    洛谷 P1880 [NOI1995] 石子合并(区间DP)
    洛谷 P1280 尼克的任务
  • 原文地址:https://www.cnblogs.com/xhyan/p/6554051.html
Copyright © 2011-2022 走看看