bash Redirecting_AppendingRedirecting_HereDocument_HereString_etc

10 篇文章 0 订阅
2 篇文章 0 订阅

refer to: man bash


Redirecting Input

       Redirection of input causes the file whose name results from the expansion of word to be opened for reading on file descriptor n, or  the  stan-
       dard input (file descriptor 0) if n is not specified.

       The general format for redirecting input is:

              [n]<word

   Redirecting Output
       Redirection  of output causes the file whose name results from the expansion of word to be opened for writing on file descriptor n, or the stan-
       dard output (file descriptor 1) if n is not specified.  If the file does not exist it is created; if it does exist it is truncated to zero size.

       The general format for redirecting output is:

              [n]>word

       If the redirection operator is >, and the noclobber option to the set builtin has been enabled, the redirection will fail if the file whose name
       results from the expansion of word exists and is a regular file.  If the redirection operator is >|, or the redirection operator is  >  and  the
       noclobber option to the set builtin command is not enabled, the redirection is attempted even if the file named by word exists.

   Appending Redirected Output
       Redirection  of output in this fashion causes the file whose name results from the expansion of word to be opened for appending on file descrip-
       tor n, or the standard output (file descriptor 1) if n is not specified.  If the file does not exist it is created.

       The general format for appending output is:

              [n]>>word

   Redirecting Standard Output and Standard Error
       This construct allows both the standard output (file descriptor 1) and the standard error output (file descriptor 2) to  be  redirected  to  the
       file whose name is the expansion of word.

 There are two formats for redirecting standard output and standard error:

              &>word
       and
              >&word

       Of the two forms, the first is preferred.  This is semantically equivalent to

              >word 2>&1

   Appending Standard Output and Standard Error
       This  construct allows both the standard output (file descriptor 1) and the standard error output (file descriptor 2) to be appended to the file
       whose name is the expansion of word.

       The format for appending standard output and standard error is:

              &>>word

       This is semantically equivalent to

              >>word 2>&1

   Here Documents
       This type of redirection instructs the shell to read input from the current source until a line containing  only  delimiter  (with  no  trailing
       blanks) is seen.  All of the lines read up to that point are then used as the standard input for a command.

       The format of here-documents is:

              <<[-]word
                      here-document
              delimiter

       No  parameter  expansion, command substitution, arithmetic expansion, or pathname expansion is performed on word.  If any characters in word are
       quoted, the delimiter is the result of quote removal on word, and the lines in the here-document are not expanded.  If  word  is  unquoted,  all
       lines  of the here-document are subjected to parameter expansion, command substitution, and arithmetic expansion.  In the latter case, the char-
       acter sequence \<newline> is ignored, and \ must be used to quote the characters \, $, and `.
 If the redirection operator is <<-, then all leading tab characters are stripped from input lines  and  the  line  containing  delimiter.   This
       allows here-documents within shell scripts to be indented in a natural fashion.

   Here Strings
       A variant of here documents, the format is:

              <<<word

       The word is expanded and supplied to the command on its standard input.

   Duplicating File Descriptors
       The redirection operator

              [n]<&word

       is  used  to  duplicate input file descriptors.  If word expands to one or more digits, the file descriptor denoted by n is made to be a copy of
       that file descriptor.  If the digits in word do not specify a file descriptor open for input, a redirection error occurs.  If word evaluates  to
       -, file descriptor n is closed.  If n is not specified, the standard input (file descriptor 0) is used.

       The operator

              [n]>&word

       is  used similarly to duplicate output file descriptors.  If n is not specified, the standard output (file descriptor 1) is used.  If the digits
       in word do not specify a file descriptor open for output, a redirection error occurs.  As a special case, if n is omitted,  and  word  does  not
       expand to one or more digits, the standard output and standard error are redirected as described previously.

   Moving File Descriptors
       The redirection operator

              [n]<&digit-

       moves  the  file  descriptor digit to file descriptor n, or the standard input (file descriptor 0) if n is not specified.  digit is closed after
       being duplicated to n.

       Similarly, the redirection operator

              [n]>&digit-

       moves the file descriptor digit to file descriptor n, or the standard output (file descriptor 1) if n is not specified.

   Opening File Descriptors for Reading and Writing

The redirection operator

              [n]<>word

       causes the file whose name is the expansion of word to be opened for both reading and writing on file descriptor n, or on file descriptor 0 if n
       is not specified.  If the file does not exist, it is created.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值