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