SC3023
Vidar Holen edited this page Sep 8, 2020
·
1 revision
In POSIX sh, FDs outside of 0-9 are undefined.
(or "In dash, ... are not supported." when using dash)
Problematic code:
# Open FD #10 for writing
exec 10> fileCorrect code:
Either rewrite the script to only use FDs in the valid range, or switch to a shell that allows a larger range like bash or ksh.
Rationale:
The shell grammar is only required to recognize a single digit before redirections to set the file descriptor, which limits the portable range to 0-9.
Exceptions:
None.
Related resources:
- Help by adding links to BashFAQ, StackOverflow, man pages, POSIX, etc!