cpython/Tools/scripts/lfcr.py
Éric Araujo 1bf5b6a454 Update crlf and lfcr scripts for 3.x bytes semantics (#12032).
Changes to crlf originally by Victor Stinner for 3.3, copied to lfcr by
me.  Manually tested.
2011-08-12 19:40:05 +02:00

25 lines
640 B
Python
Executable File

#! /usr/bin/env python3
"Replace LF with CRLF in argument files. Print names of changed files."
import sys, re, os
def main():
for filename in sys.argv[1:]:
if os.path.isdir(filename):
print(filename, "Directory!")
continue
with open(filename, "rb") as f:
data = f.read()
if b'\0' in data:
print(filename, "Binary!")
continue
newdata = re.sub(b"\r?\n", b"\r\n", data)
if newdata != data:
print(filename)
with open(filename, "wb") as f:
f.write(newdata)
if __name__ == '__main__':
main()