一键重命名钉钉接收到的文件

  1. 一、缘由
  2. 二、代码实现
  3. 三、将Python代码打包成exe文件

一、缘由

由于某些原因,公司的程序只能手动发版,开发本地打包好后通过钉钉发送给运维。但是钉钉接收到名字一样的文件后,会自动重命名,加上括号和数字,比如apollo-1.0.RELEASE(2).jar,这样你就需要手动处理掉后面的括号和数字。

手动太麻烦,索性就用python来实现自动重名,并将python代码打包成exe程序,后将exe程序固定在任务栏。这样鼠标点一下任务栏图标,就可以实现一键重命名阿里云接收到的文件,Nice。

二、代码实现

import os
import re

download_dir = 'C:\\Users\\Thinkpad\\Downloads'
file_dic = {}


# 重命名最新的一个文件,去掉文件名的括号和数字
# apollo-1.0.RELEASE(2).jar --> apollo-1.0.RELEASE.jar
# downloads文件夹就一个文件怎么处理。文件夹为空,就先就报错吧。
# 如果有downloads下有文件夹,也会报错,需要调用os.rmdir()来处理。
def delete_other_files():
    files = os.listdir(download_dir)
    for file in files:
        mtime = os.stat(os.path.join(download_dir, file)).st_mtime
        file_dic[mtime] = file
    time_list = list(file_dic.keys())
    max_time = max(time_list)
    if len(file_dic) > 1:
        time_list.remove(max_time)
        for time in time_list:
            os.remove(os.path.join(download_dir, file_dic[time]))
    return file_dic[max_time]


# 如果只有一个正常的文件,不做替换,
def rename_file(file):
    new_name = re.sub(r'\(\d+\)', '', file)
    os.chdir(download_dir)
    os.rename(file, new_name)


if __name__ == '__main__':
    file_name = delete_other_files()
    # file_name = 'dist.zip'
    rename_file(file_name)

三、将Python代码打包成exe文件

这里使用pyinstaller模块,具体命令为:

pyinstaller -F -c main.py

将Python打包成exe文件的具体介绍见另一篇文章:Python制作Exce报表并打包


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 lxwno.1@163.com

×

喜欢就点赞,疼爱就打赏