Python 小工具速记:批量改名、日志清理与定时提醒
【摘要】 Python 写小工具不用搭大框架,几十行就能把每天重复的手工活替掉。下面三个都是我常写、改改就能用的类型。 一、批量改名import osfrom pathlib import Pathfolder = Path("photos")for i, f in enumerate(folder.glob("*.jpg"), 1): f.rename(folder / f"photo_{i:...
Python 写小工具不用搭大框架,几十行就能把每天重复的手工活替掉。下面三个都是我常写、改改就能用的类型。
一、批量改名
import os
from pathlib import Path
folder = Path("photos")
for i, f in enumerate(folder.glob("*.jpg"), 1):
f.rename(folder / f"photo_{i:03d}.jpg")
先用 print 打出新旧名字确认一遍,再真正 rename,照片、下载文件批量整理时最怕改错回不来。
二、日志清理
import time
from pathlib import Path
for f in Path("/var/log/myapp").glob("*.log"):
if time.time() - f.stat().st_mtime > 30 * 86400:
f.unlink()
按修改时间删 30 天前的日志,比手动 rm 安全:只删指定目录、只删 .log,不会误伤配置文件。
三、定时提醒
import time
while True:
print("该喝水、起来活动一下了")
time.sleep(3600)
真正长期跑的提醒还是交给 cron 或 systemd timer,上面这种循环适合临时挂着、跑完就关的小任务。
四、写小工具的习惯
- 路径、时间、数量这些容易变的值放开头当变量,别散在代码里。
- 先在小目录、复制出来的测试数据上跑,确认无误再跑正式目录。
- 删文件、改名的操作先 dry-run 打日志,看到底会动哪些文件。
小工具不求全,能稳定解决一个具体问题、自己下次还敢直接跑,就是好工具。
【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)