Shell Programming/I/O Redirection

      File descriptor (fd) 0 is stdin. Fd 1 is stdout. Fd 2 is stderr.

      #!/bin/bash
      tasklist=$1
      exec 6<$tasklist
      while read -u 6 raw
      do
             # Do for each line
      done
      exec 6<&-
      

      In the above example, exec globally opens $tasklist file for reading by assigning fd 6. The read command then reads fd 6 source line by line until end of file. The exec globally closes fd 6 in the last line.

      Last modified on 30 November 2010, at 02:58