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: Additional carriage return added by cygwin commands to DOS text files


I experienced the same issue with the "cat" command, and unfortunately I didn't find any transparent solution :-(

However a non-transparent hack is to use first a text filter then pipe its output to the original command. The filter opens the file in textmode so it gets rid of the CR. Then, as expected, no CR are present in the pipe. Then normal CRs are added in the resulting file when it is written on disk.


The "more" command is a good choice for such a filter, because its pager functionality is disabled when it writes to a pipe, so it acts as a simple repeater in textmode: exactly what we need.

$ more test1 |grep -U -E 'a|b' > test2
$ xxd test2
0000000: 6161 610d 0a62 6262 0d0a                 aaa..bbb..

The result is correct.

--
Vincent Rivière

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