#!/usr/bin/env python2
"convert one or more textfiles from Windows to UNIX format in-place"
import sys

BUFSIZE = 256 * 1024

if __name__ == "__main__":
    try:
        f = file(sys.argv[1], "r+b")
    except IndexError:
        print "Usage:", sys.argv[0], "<filename>"
        sys.exit(2)
    except IOError:
        print "Error: cannot open file"
        sys.exit(1)

    inpos = 0L
    outpos = 0L

    while True:
        f.seek(inpos)
        data = f.read(BUFSIZE)
        if not data:
            break
        inpos += len(data)
        
        data = data.replace("\r", "")
        f.seek(outpos)
        f.write(data)
        outpos += len(data)

    f.truncate(outpos)
    f.close()
