去除文件名中相同的部分
一晃一年都没写博客了,又是庸庸碌碌的过去了一年,最近开始研究大数据方向,下了很多视频,然后发现文件名后面都带有链接,让我这样的强迫症患者很不舒服,然后网上百度了一下,写了一个bat脚本,结果只能去除文件开头的相同内容。
参考的bat脚本
@echo off& setlocal enabledelayedexpansion
for /f "delims=" %%1 in ('dir /a /b') do (set wind=%%1
ren "%%~1" "!wind:文档=!")
还有的让我去下载一个bulk rename utility
的工具去处理,想了一下,实在不想下载,也不是很复杂,就自己写一个吧,贴一下我写的脚本,很简单,只是证明我还活着,还是会继续写博客,有的时候研究都是皮毛,而且很杂,都不知道如何分享,所以导致我很久没有写博客了。
import os
import sys
def TravDirectory(containContent):
for dirpath, _, filenames in os.walk("./"):
for file in filenames:
filename, extension = os.path.splitext(file)
if containContent in filename:
filename = filename.replace(containContent, "").strip()
os.rename(os.path.join(dirpath, file), os.path.join(dirpath, filename+extension))
if __name__ == "__main__":
try:
delContent = sys.argv[1]
except:
print("请输入你要去除的内容")
os.system("pause")
TravDirectory(delContent
脚本运行也很简单,将内容复制到本地,然后创建一个文件保存脚本内容,如果你要处理的文件是多个目录,就放在这多个目录的父目录中,如果只是一个目录的话,就放同级目录下就好,然后执行
python 脚本名 要删除的内容
如果要删除的内容包含空格,记得用引号括起来,防止有些跟我一样懒的人,复制都不想复制,或者本地没有python环境,这里我再分享一个我通过pyinstaller打出来的exe以供执行。说到pyinstaller打包,上次在CSDN上看到一个付费的博客,写的很好,有机会整理整理,结合我的收获分享给大家。
链接:https://pan.baidu.com/s/1fpLGnRpZyEvLcQkc5lRhvA
提取码:0nu0
exe也不能直接双击运行哦,因为需要输入要去除的内容,所以还是得在cmd上运行,类似如下,因为实在很懒,不想写gui
=》2021-06-21更新《=
对于我一个这么懒的人,实在是没办法每次还要我去通过cmd窗口去运行,感觉多了一步太麻烦了,所以更改了一下程序,添加了一个gui。修改代码如下
import os
import tkinter as tk
def TravDirectory(containContent):
for dirpath, _, filenames in os.walk("./"):
for file in filenames:
filename, extension = os.path.splitext(file)
if containContent in filename:
filename = filename.replace(containContent, "").strip()
os.rename(os.path.join(dirpath, file), os.path.join(dirpath, filename+extension))
if __name__ == "__main__":
try:
gui = tk.Tk()
gui.title("重命名工具")
# 创建标签
label = tk.Label(gui, text="去除内容: ", font="微软雅黑")
label.grid(row=1)
# 创建输入框
inpContent = tk.Entry(gui)
# 设置输入框默认内容
# inpContent.insert(0, "")
# 设置输入框显示位置
inpContent.grid(row=1, column=1)
# 创建执行按钮
executeBtn = tk.Button(gui, text="确定", width=13, command=lambda:TravDirectory(inpContent.get()))
executeBtn.grid(row=3, column=1)
# 创建退出按
exitBtn = tk.Button(gui, text="退出", width=8, command=gui.quit)
exitBtn.grid(row=3)
gui.mainloop()
except:
print("请输入要删除的内容")
运行之后点击确定按钮即可运行
同样也打包好了一个exe
链接:https://pan.baidu.com/s/1xNnJsD_m-ypuyMjTdEuIbg
提取码:sx05