Mail Archives: cygwin/2004/03/30/14:30:36
Igor Pechtchanski wrote:
> On Tue, 30 Mar 2004, Mike Spertus wrote:
>
>> I have installed Cygwin with DOS linebreaks (i.e., disks mounted in
>> textmode). However, Cygwin perl doesn't seem to understand this as shown
>> below. How do I tell Cygwin perl to respect textmode?:
>>
>> MPS AT MPS-2000 ~
>> $ od -t x1 foo.txt
>> 0000000 66 6f 6f 62 61 72 0d 0a 66 6f 6f 62 61 7a 0d 0a
>> 0000020 66 6f 6f 62 61 74 0d 0a 0d 0a
>> 0000032
>>
>> MPS AT MPS-2000 ~
>> $ cat ~/foo.txt | perl -e 'while (<>) {print;}' >bar.txt
>>
>> MPS AT MPS-2000 ~
>> $ od -t x1 bar.txt
>> 0000000 66 6f 6f 62 61 72 0d 0d 0a 66 6f 6f 62 61 7a 0d
>> 0000020 0d 0a 66 6f 6f 62 61 74 0d 0d 0a 0d 0d 0a
>> 0000036
>>
>> MPS AT MPS-2000 ~
>> $ mount
>> C:\cygwin\bin on /usr/bin type system (textmode)
>> C:\cygwin\lib on /usr/lib type system (textmode)
>> C:\cygwin on / type system (textmode)
>> c: on /cygdrive/c type user (textmode,noumount)
>> g: on /cygdrive/g type user (textmode,noumount)
>> r: on /cygdrive/r type user (textmode,noumount)
>>
>> Is this a bug? Any suggestions?
>>
>> Thanks,
>> Mike
>
> When you use pipes, you lose the mount mode information. Try running
>
> $ perl -e 'while (<>) {print;}' <~/foo.txt >bar.txt
>
> instead. For controlling the mode of pipes, read about the "(no)binmode"
> option at <http://cygwin.com/cygwin-ug-net/using-cygwinenv.html>.
> Igor
I tried running your command, and exactly the same problem occurred :(
In fact, my original perl script that I simplified in the post actually
got the filename from the command line.
Mike
--
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/
- Raw text -