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 shell script issue


Something else I did not know.


dalkmora@DALM0048 ~/walnut/dp2b_walnut_customer_flextronics/walnut 
$ od -cx testconvert1.sh 
0000000   #   !   /   b   i   n   /   b   a   s   h  \r  \n   e   c   h 
2123    622f    6e69    622f    7361    0d68    650a    6863 
0000020   o       $   P   W   D  \r  \n   p   r   o   j   e   c   t   _ 
206f    5024    4457    0a0d    7270    6a6f    6365    5f74 
0000040   r   o   o   t   =   $   P   W   D  \r  \n   e   c   h   o 
6f72    746f    243d    5750    0d44    650a    6863    206f 
0000060   $   p   r   o   j   e   c   t   _   r   o   o   t  \r  \n   x 
7024    6f72    656a    7463    725f    6f6f    0d74    780a 
0000100   =   $   {   p   r   o   j   e   c   t   _   r   o   o   t   } 
243d    707b    6f72    656a    7463    725f    6f6f    7d74 
0000120   /   t   o   o   l   s  \r  \n   e   c   h   o       $   x  \r 
742f    6f6f    736c    0a0d    6365    6f68    2420    0d78 
0000140  \n   e   c   h   o       $   {   x   }       |       c   a   t 
650a    6863    206f    7b24    7d78    7c20    6320    7461 
0000160       -   A 
2d20    0041 
0000163 

The proportional spacing screwed it up, but there are no extra unprintable characters. 

I have been using notepad++ for my windows editor. 

So that is not the issue. 

Thanks for the suggestion.

Kip


----- Original Message -----
From: Michel LaBarre <michel.labarre@rogers.com>
To: 'Eric Blake' <eblake@redhat.com>; cygwin@cygwin.com; kipton_moravec@yahoo.com
Sent: Tuesday, September 6, 2016 8:41 PM
Subject: RE: Bash shell script issue

Suggestion to Kipton: 
    od -cx <name-of-your-script> 
will show you exactly what is in your script so you can see any spurious carriage-returns or other special characters.

> -----Original Message-----
> From: cygwin-owner@cygwin.com [mailto:cygwin-owner@cygwin.com] On
> Behalf Of Eric Blake
> Sent: September-06-16 9:21 PM
> To: cygwin@cygwin.com; kipton_moravec@yahoo.com
> Subject: Re: Bash shell script issue
> 
> On 09/06/2016 05:36 PM, Kipton Moravec wrote:
> 
> > I this is the script:
> > #!/bin/bash
> > echo $PWD
> 
> Insufficient quoting. This does not do the right thing if $PWD contains
> spaces.  But not necessarily related to your problem at hand.
> 
> > project_root=$PWD
> > echo $project_root
> 
> Again, insufficient quoting.
> 
> > x=${project_root}/tools
> > echo $x
> 
> And again.
> 
> > echo ${x} | cat -A
> >
> > On original Windows 7 computer I get:
> > dalkmora@DALM0048
> ~/walnut/dp2b_walnut_customer_flextronics/walnut
> > $ ./testconvert1.sh
> > /home/dalkmora/walnut/dp2b_walnut_customer_flextronics/walnut
> > /home/dalkmora/walnut/dp2b_walnut_customer_flextronics/walnut
> > /toolsdalkmora/walnut/dp2b_walnut_customer_flextronics/walnut
> >
> /home/dalkmora/walnut/dp2b_walnut_customer_flextronics/walnut^M/to
> ols^M$
> 
> The carriage returns are likely a product of you editing the file in
> text mode (Windows notepad is notorious for this, but many other native
> programs do likewise), but trying to execute the script in binary mode
> (the default, if you do not use 'set -o igncr').
> 
> 
> > What am I doing wrong or is this an error?
> > Where do the carriage returns (^M) come from, and how do I get rid of
> them?
> 
> d2u /path/to/your/script
> 
> to remove all the carriage returns from your careless editing. Once they
> are gone, then you don't need the 'igncr' crutch to tell bash to go into
> text mode.
> 
> --
> Eric Blake   eblake redhat com    +1-919-301-3266
> Libvirt virtualization library http://libvirt.org

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


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