zoukankan      html  css  js  c++  java
  • shell重定向命令执行顺序

    重定向内容介绍 

    一条shell命令的执行包含三个文件描述符:标准输入(键盘等) stdin 0,标准正确输出(屏幕等) stdout 1,标准错误输出(屏幕等)stderr 2
     
    通过重定向可以指定输入的文件内容和输出到的位置
     
     

     

    符号 说明
    < file 输入重定向,将<后的file文件内容作为command执行前的输入
    > file 或1>file 输出重定向,将标准正确输出覆盖到后面的file文件内
    >> file或1>>file 输出重定向,将标准正确输出追加到后面的file文件内
    2>file 输出重定向,将标准错误输出覆盖到后面的file文件内
    2>>file 输出重定向,将标准错误输出追加到后面的file文件内
    &>file 或 >file 2>&1 输出重定向,将标准正确输出和标准错误输出覆盖到后面的file文件内
    &>>file 或 >>file 2>&1 输出重定向,将标准正确输出和标准错误输出追加到后面的file文件内

     

    重定向执行顺序

    shell会按照;等分隔符将一串命令分成多个命令,替换命令中的变量后执行单条命令
     
    shell单条命令,重定向部分的执行顺序:先<,然后command,最后<和<<
    第一步:先读取<后的内容做为输入,如果一条命令有多个<,会读取最后一个<后的内容
    <放在命令前后都可以,例如【< /etc/hosts cat】相当于【cat /etc/hosts】
     
    第二步:执行command命令
    第三步:如果有>或>>会将结果进行重定向,如果输出重定向多个文件,只会将内容重定向到最后一个文件
    例如 cat /etc/hosts > test1.txt >test2.txt
    只有test2.txt会出现内容,test1.txt内容是空的
     
    输出重定向>和>>的位置放在哪里都可以,例如【> test.txt  cat /etc/hosts】,表示将/etc/hosts的内容输入到test.txt中
     
     
    参考文档:
  • 相关阅读:
    time fly
    小论文初稿终于完成
    leetcode之Length of Last Word
    static关键字
    参数传递
    this关键字
    面向对象有三大特征
    空指针异常
    变量按数据类型分为
    构造方法
  • 原文地址:https://www.cnblogs.com/meitian/p/6951920.html
Copyright © 2011-2022 走看看