| Summary: | "source" does not work in conjunction with "process substitution" | ||
|---|---|---|---|
| Product: | Sisyphus | Reporter: | at <at> |
| Component: | bash | Assignee: | placeholder <placeholder> |
| Status: | RESOLVED LATER | QA Contact: | qa-sisyphus |
| Severity: | normal | ||
| Priority: | P2 | CC: | glebfm, ldv, placeholder, vt |
| Version: | unstable | ||
| Hardware: | all | ||
| OS: | Linux | ||
| URL: | http://lists.gnu.org/archive/html/bug-bash/2006-01/msg00018.html | ||
|
Description
at@altlinux.org
2005-07-28 05:49:57 MSD
Same happens with bash-3.0 Same with bash-3.1.1.
Here is an explanation:
$ strace -e trace=file,desc bash -ec '. <(echo echo 1)'
[...]
stat64("/dev/fd/63", {st_mode=S_IFIFO|0600, st_size=0, ...}) = 0
open("/dev/fd/63", O_RDONLY|O_LARGEFILE) = 3
fstat64(3, {st_mode=S_IFIFO|0600, st_size=0, ...}) = 0
read(3, "", 0) = 0
close(3) = 0
From Chet Ramey answer: "The bash source builtin only works with regular files. This is a limitation that will someday be lifted." http://lists.gnu.org/archive/html/bug-bash/2006-01/msg00018.html |