今天遇到一个问题,需要将我制作的python工具给别的公司的同事用,最好还是加密一下,虽然我也知道pyc很容易破解的,总比直接给源码好。
1. 批量pyc递归生成
python.exe -m compileall <dir>
2. 批量替换pycache文件夹下的文件名
运行如下bat文件
@echo off
Setlocal enabledelayedexpansion
Set "BeforeStr=.cpython-37."
Set "AfterStr=."
For /r %%# in (*) Do (
Set "File=%%~nx#"
Ren "%%#" "!File:%BeforeStr%=%AfterStr%!"
)
3. 文件路径处理
手工删除原.py文件将pycache文件夹下的pyc移动到原py路径下。
4. 遇到的问题总结
- 生成pyc并且删除源码后,程序无法运行了。
原因是生成的pyc多了.cpython-37。所以需要替换文件名。另外文件路径也要替换。
网友评论