Bash Process Substitution

Lev S Bishop lev.bishop@yale.edu
Thu Apr 14 12:07:00 GMT 2005


I tried building bash from the source package, and then it uses either
/dev/fd (if I have that as a symlink) or /proc/self/fd (if I don't),
rather than the fifo that the binary package uses. So perhaps whoever
built the binary package didn't have /proc/self/fd for whatever reason?

With my built bash.exe, process substitution seems to work for input:
$ echo <(ls)
/proc/self/fd/63
$ cat <(echo hi)
hi

But not for output:
$ tar -cf >(cat) syntax.c
tar: /proc/self/fd/63: Cannot open: Permission denied
tar: Error is not recoverable: exiting now

I'm not sure how there can be a permissions problem or what to do about 
it if there really is one, given that as I understand it 
the /proc/self/fd/63 is effectively a symlink to one end of something 
returned from pipe(2).

Lev



--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/



More information about the Cygwin mailing list