ASCII files becoming double lined
    Jerry McAllister 
    jerrymc at clunix.cl.msu.edu
       
    Thu Mar 30 15:20:35 UTC 2006
    
    
  
> 
> 
> Hello!
> 
> Sometimes I notice ASCII files becoming double lined.
> As in there somehow appearing an empty line in between every line.
> 
> Why is this? And:
> 
> 01 How can I detect files with double lines?
> 02 And then eliminate this double lining?
Check out tr(1)
It will quite easily remove the extra CR in every line.
Then, if you need, you can rename the clean file to the dirty file
  something like:   # tr -d "\r" < dirtyfile > cleanfile
                    # mv cleanfile dirtyfile
Sorry, it takes two steps.
Thre are other methods that do it without a second file, but
for newbies, this is easier to understand.
////jerry
> 
> The goal would be to apply 01 and 02 to this script:
> 
> #!/usr/local/bin/bash
> #
> #   Remove CRLF, trailing whitespace and blank lines.
> #   $MARBEJA: clean.sh,v 1.0 2007/11/11 15:09:05 awad Exp $
> #
> 
> for file in `find -s . -type f`; do
> 
> 	if file -b "$file" | grep -q 'text'; then
> 
> 		echo >> "$file"
> 
> 		tr -d '\r' < "$file" \
> 		| sed -E -e 's/[[:space:]]+$//' \
> 		| cat -s - > "${file}.tmp" && mv -f "${file}.tmp" "$file"
> 
> 		echo "$file: Done"
> 
> 	fi
> 
> done
> 
> Thanks,
> Vaaf
> 
> _______________________________________________
> freebsd-questions at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-questions
> To unsubscribe, send any mail to "freebsd-questions-unsubscribe at freebsd.org"
> 
    
    
More information about the freebsd-questions
mailing list