zoukankan      html  css  js  c++  java
  • Advanced redirection features

    here are three types of I/O, which each have their own identifier, called a file descriptor:

    • standard input: 0

    • standard output: 1

    • standard error: 2

    In the following descriptions, if the file descriptor number is omitted, and the first character of the redirection operator is <, the redirection refers to the standard input (file descriptor 0). If the first character of the redirection operator is >, the redirection refers to the standard output (file descriptor 1).

    Some practical examples will make this more clear:

    ls > dirlist 2>&1

    will direct both standard output and standard error to the file dirlist, while the command

    ls 2>&1 > dirlist

    will only direct standard output to dirlist. This can be a useful option for programmers.

    Things are getting quite complicated here, don't confuse the use of the ampersand here with the use of it inSection 4.1.2.1, where the ampersand is used to run a process in the background. Here, it merely serves as an indication that the number that follows is not a file name, but rather a location that the data stream is pointed to. Also note that the bigger-than sign should not be separated by spaces from the number of the file descriptor. If it would be separated, we would be pointing the output to a file again. The example below demonstrates this:

    [nancy@asus /var/tmp]$ ls 2> tmp
    
    [nancy@asus /var/tmp]$ ls -l tmp
    -rw-rw-r--  1 nancy nancy 0 Sept  7 12:58 tmp
    
    [nancy@asus /var/tmp]$ ls 2 > tmp
    ls: 2: No such file or directory
    

    The first command that nancy executes is correct (eventhough no errors are generated and thus the file to which standard error is redirected is empty). The second command expects that 2 is a file name, which does not exist in this case, so an error is displayed.

    All these features are explained in detail in the Bash Info pages.

  • 相关阅读:
    楼宇及工业自动化总线协议介绍
    PROFIBUS,PROFINET,Ethernet三者的区别
    转:OSAL多任务资源分配机制
    Zigbee系列 学习笔记二(工程文件分析)
    Zigbee系列 学习笔记一(协议栈)
    STC12C5A60S2单片机 PWM调试
    单片机 IO口配置模式介绍
    串口通信校验方式
    STC12C5A60S2单片机 串口调试
    本地Nexus 3.3.2 启动
  • 原文地址:https://www.cnblogs.com/vigorz/p/10499102.html
Copyright © 2011-2022 走看看