This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Bash Process Substitution


Process substitution in bash is not working for me currently. I'm pretty 
certain it worked at some point in the past (maybe about 6 months ago). 

For example:
$ cat <( echo hello)

hangs, ignoring ^C, kill -9, and requiring kill -f on the cat 
process.

Reading the bash manual, it seems bash can use either /dev/fd or named
pipes as the underlying mechanism for process substitution. My
understanding is that cygwin has recently gained some level of support for
named pipes but that they aren't fully working (is this true?). Perhaps in
the past, bash used the /dev/fd method but now it sees these named
pipes and tries to use those, but chokes due to the incomplete
implementation of the latter?

Some evidence that this is the case:

$ echo <( echo)
/tmp/sh-np-197572444
$ ls -l /tmp/sh-np-197572444
prw-------  1 Lev None 102 Apr 14 03:42 /tmp/sh-np-197572444

So it looks to be using a fifo in /tmp 
I tried adding a symlink /dev/fd like on my linux box, but this didn't 
help:
$ ls -l /dev/fd
lrwxrwxrwx  1 Lev None 13 Apr 13 21:54 /dev/fd -> /proc/self/fd

So, if my guess is correct, maybe there is some way to convince bash to 
ignore the fifo possibility and just use /dev/fd, as it presumably did in 
the past?

Results of the above commands on a linux box, for comparison purposes:
$ cat <( echo hello)
hello
$ echo <( echo)
/dev/fd/63
$ ls -l /dev/fd
lrwxrwxrwx    1 root     root           15 Oct  5  2001 /dev/fd -> ../proc/self/fd

So it appears that on the linux box it is not using a fifo.

Thanks for any insight,
Lev 

cygcheck -s -v -r output attached

Attachment: cygcheck.out
Description: Text document

--
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/

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]