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]

Re: bash scripts fail with bash3.1-8


On Thu, 5 Oct 2006, Thomas Porschberg wrote:

> Am Wed, 04 Oct 2006 10:19:52 -0500
> schrieb mwoehlke :
>
> > Thomas Porschberg wrote:
> > > Am Tue, 3 Oct 2006 17:02:29 +0100
> > > schrieb "Dave Korn" :
> > >> On 03 October 2006 16:43, Turly O'Connor wrote:
> > >>> By way of an example as to what broke, note that in the following
> > >>> that  "cleartool" is not a cygwin tool (it's a Windows
> > >>> executable), writing its CRLF-terminated output to Windows'
> > >>> stdout.
> > >>>
> > >>> CHECKOUTS=`cleartool lsc -all -cvi -s`  # list all my checkouts
> > >>>
> > >>> I used to be able to do
> > >>>
> > >>> for one in $CHECKOUTS ; do echo $one Hello ; done
> > >>>
> > >>> C:/Path/To/file1 Hello
> > >>> C:/Path/To/file2 Hello
> > >>>
> > >>> Now it seems that "$one" above contains the binary CR, so I get:
> > >>>
> > >>> Hello h/To/file1
> > >>> Hello h/To/file2
> > >>>
> > >>> What do I need to do to get this working again?
> > >>   How about
> > >>
> > >> CHECKOUTS=`cleartool lsc -all -cvi -s | d2u`  # list all my
> > >> checkouts
> > >>
> > >> or
> > >>
> > >> for one in $((echo $CHECKOUTS | d2u)) ; do echo $one Hello ; done
> > >>
> > >> depending on how happy cleartool is on piping output to a cygwin
> > >> program.
> > >
> > > This is exactly the problem I have with my sqlplus call.
> > > Is there a way to solve it without introducing the d2u filter ?
> >
> > You could try the new shopt... but have you considered arranging for
> > 'sqlplus' to point to a shell script that would exec 'sqlplus.exe'
> > and pipe it through d2u?
> >
> I tried the new "shopt -s igncr;#' but it does not work for this case.
> (It does work if I have CR polluted files but not with the piped stdout
> result)
> Your approach with the additional shell script looks good. Thank you.
> But it was not necessary in the past and now I have to do it for every
> Windows program I call from cygwin and that writes to stdout.
> ( ATM I see only sqlplus in my case :-) ).

If you want textmode pipes, add "nobinmode" to your CYGWIN environment
variable.  See <http://cygwin.com/cygwin-ug-net/using-cygwinenv.html> for
more information.
HTH,
	Igor
-- 
				http://cs.nyu.edu/~pechtcha/
      |\      _,,,---,,_	    pechtcha@cs.nyu.edu | igor@watson.ibm.com
ZZZzz /,`.-'`'    -.  ;-;;,_		Igor Peshansky, Ph.D. (name changed!)
     |,4-  ) )-,_. ,\ (  `'-'		old name: Igor Pechtchanski
    '---''(_/--'  `-'\_) fL	a.k.a JaguaR-R-R-r-r-r-.-.-.  Meow!

"Las! je suis sot... -Mais non, tu ne l'es pas, puisque tu t'en rends compte."
"But no -- you are no fool; you call yourself a fool, there's proof enough in
that!" -- Rostand, "Cyrano de Bergerac"

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