我们软件中的版权声明需要提升到2014年。这意味着:
AssemblyInfo.cs
[assembly:AssemblyCopyright(“Copyright©2014 Company”)]
听起来很自然的完美小任务。我写了一个Python 3脚本,但它mullered(即mojibaked)版权符号。我想这是由于字符编码问题。
那么,如何进行编码 - 尊重查找和替换?这会在不更改文件编码的情况下更改版权行。
我不可靠的脚本是Python,但我不介意使用其他语言(C#,Ruby,Nodejs等),只要它有效。
对于好奇,这是我的Python脚本。
#!python
import fnmatch
import os
matches = []
for root, dirnames, filenames in os.walk('.'):
for filename in filenames:
if filename != 'AssemblyInfo.cs':
continue
path = os.path.join(root, filename)
with open(path) as f:
lines = list(f)
new_lines = list()
changed = False
for line in lines:
if "AssemblyCopyright" in line:
line = '[assembly: AssemblyCopyright("Copyright © 2014 Company")]\r\n'
changed = True
new_lines.append(line)
if not changed:
continue
print(path)
with open(path, 'w') as f:
f.write("".join(new_lines))