Package: parallel Version: 20130922-1 Severity: normal Dear Maintainer,
It seems that 'parallel' will (always?) automatically close all file descriptors in the range 3 to 61 before starting the child process. For example: $ exec 5</etc/passwd $ ls -l /dev/fd/ total 0 lrwx------ 1 benjamin benjamin 64 Feb 26 19:42 0 -> /dev/pts/2 lrwx------ 1 benjamin benjamin 64 Feb 26 19:42 1 -> /dev/pts/2 lrwx------ 1 benjamin benjamin 64 Feb 26 19:42 2 -> /dev/pts/2 lr-x------ 1 benjamin benjamin 64 Feb 26 19:42 3 -> /proc/19896/fd lr-x------ 1 benjamin benjamin 64 Feb 26 19:42 5 -> /etc/passwd $ parallel ls -l <<</dev/fd/ total 0 lr-x------ 1 benjamin benjamin 64 Feb 26 19:42 0 -> pipe:[222723] lrwx------ 1 benjamin benjamin 64 Feb 26 19:42 1 -> /tmp/L6a2EkkAKD.par (deleted) lrwx------ 1 benjamin benjamin 64 Feb 26 19:42 2 -> /tmp/AEzA3WKNXP.par (deleted) lr-x------ 1 benjamin benjamin 64 Feb 26 19:42 3 -> /proc/19925/fd This does not seem like a *useful* feature to me, and is in fact making my life a bit difficult at the moment. The only clue in the source is the comment that "/dev/fd/62 and above are used by bash for <(cmd)", but there's no explanation given as to why *those* file descriptors should be treated differently from file descriptors opened in other ways. Moreover I don't see any mention of this in the documentation. Is there a reason for this behavior? -- System Information: Debian Release: 8.3 APT prefers stable-updates APT policy: (500, 'stable-updates'), (500, 'stable') Architecture: amd64 (x86_64) Kernel: Linux 4.3.0-0.bpo.1-amd64 (SMP w/8 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Init: systemd (via /run/systemd/system) Versions of packages parallel depends on: ii perl 5.20.2-3+deb8u3 ii perl-modules 5.20.2-3+deb8u3 parallel recommends no packages. parallel suggests no packages. -- no debconf information

