Created SC3023 (markdown)

Vidar Holen
2020-09-07 21:02:04 -07:00
parent cb9a5dfcd7
commit c3a1ea74a5

26
SC3023.md Normal file

@@ -0,0 +1,26 @@
## In POSIX sh, FDs outside of 0-9 are undefined.
(or "In dash, ... are not supported." when using `dash`)
### Problematic code:
```sh
# Open FD #10 for writing
exec 10> file
```
### Correct 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!