`
qindongliang1922
  • 浏览: 2171189 次
  • 性别: Icon_minigender_1
  • 来自: 北京
博客专栏
7265517b-f87e-3137-b62c-5c6e30e26109
证道Lucene4
浏览量:117078
097be4a0-491e-39c0-89ff-3456fadf8262
证道Hadoop
浏览量:125423
41c37529-f6d8-32e4-8563-3b42b2712a50
证道shell编程
浏览量:59493
43832365-bc15-3f5d-b3cd-c9161722a70c
ELK修真
浏览量:71017
社区版块
存档分类
最新评论

python桌面整理小助手

阅读更多
每到月末,桌面上基本都会爆满,散仙的习惯一个月整理一次桌面,上面放了各种文件,word,excel,txt,jar,压缩包等等,如果每天整理一次,感觉比较麻烦,一个月整理一次,又发现到时候整理的东西,实在太多了,少说也得花了5,6分钟,而且还得,分年分月分类拷贝进去和剪切,所以,就用python写了个整理桌面的小程序,其实不一定是桌面,任何一个路径下的文件,都可以整理,拷贝,整理路径是提前定义好的,这样才能整理。

当然这个程序,现在只是控制台,和cmd或shell下可以运行,等以后有空,把它做成窗体形式这样就更方便了。
先看下整理的几个分类:




再看下,按年月整理的截图:



当然,散仙定义的分类不一定非常完全,符合每个人分类习惯,所以会有一个未分类文件夹存放没有被分类的文件,当然如果你想定义的更细分,可以直接在代码里添加一个目录,后面如果有空,等散仙做成窗体的形式,就可以在桌面上动态添加分类文件夹,下面看下源码(基于python3.4的版本):

import os
import  shutil

#源目录,这里假设是桌面需要程序自动整理的路径
dirpath="C:\\Users\\qindongliang\\Desktop\\存档\\"

#当前月份路径,定义按多少月份归档
currentMonth="2014年9月份整理\\"

#根路径,存放一年多个月的归档数据
rootpath="C:\\Users\\qindongliang\\Desktop\\2014年整理\\"

#chm文件存档
chm=rootpath+currentMonth+"chm\\"
#csv文件存档地址
csv=rootpath+currentMonth+"csv文件\\"
#excel文件存档地址
excel=rootpath+currentMonth+"excel\\"
#jar文件存档地址
jar=rootpath+currentMonth+"jar包\\"
#java相关文件存档地址
java=rootpath+currentMonth+"java的相关\\"
#pic相关文件存档地址
pic=rootpath+currentMonth+"pic图片\\"
#shell脚本或bat文件相关文件存档地址
shellOrBat=rootpath+currentMonth+"shell脚本或bat文件\\"
#txt相关文件存档地址
txt=rootpath+currentMonth+"txt\\"
#word相关文件存档地址
word=rootpath+currentMonth+"word\\"
#各种文件夹相关文件存档地址
dirss=rootpath+currentMonth+"各种文件夹\\"
#tar相关文件存档地址
tar=rootpath+currentMonth+"各种压缩包\\"
#pdf相关文件存档地址
pdf=rootpath+currentMonth+"pdf\\"
#无分类文件
unknowFile=rootpath+currentMonth+"未分类文件\\"






def beginWork(dp):
    #转成元组表示
    tt=tuple(os.walk(dp));
    #print(len(tt[0][1]))
    #一级目录下的所有文件夹
    dirs=tt[0][1]
    #一级目录下的所有文件
    files=tt[0][2]
    print("文件夹总数量: ",len(dirs),"文件总数据量: ",len(files),"总共文件数:",len(dirs)+len(files))
    print("====================移动文件开始==================================")
    for var in tt[0][2]:
        filename=dp+"\\"+var
        #print(filename)
        if filename.endswith("chm") or filename.endswith("chw"):
            if not os.path.exists(chm):
                os.makedirs(chm)
                print(chm,"文件夹不存在,已生成!")
            shutil.move(filename,chm)
        elif filename.endswith("jar"):
            if not os.path.exists(jar):
                os.makedirs(jar)
                print(jar,"文件夹不存在,已生成!")
            shutil.move(filename,jar)
        elif filename.endswith("csv"):
            if not os.path.exists(csv):
                os.makedirs(csv)
                print(csv,"文件夹不存在,已生成!")
            shutil.move(filename,csv)
        elif filename.endswith("excel"):
            if not os.path.exists(excel):
                os.makedirs(excel)
                print(excel,"文件夹不存在,已生成!")
            shutil.move(filename,excel)
        elif filename.endswith("java"):
            if not os.path.exists(java):
                os.makedirs(java)
                print(java,"文件夹不存在,已生成!")
            shutil.move(filename,java)
        elif filename.endswith("jpg") or filename.endswith("gif"):
            if not os.path.exists(pic):
                os.makedirs(pic)
                print(pic,"文件夹不存在,已生成!")
            shutil.move(filename,pic)
        elif filename.endswith("sh") or filename.endswith("bat"):
            if not os.path.exists(shellOrBat):
                os.makedirs(shellOrBat)
                print(shellOrBat,"文件夹不存在,已生成!")
            shutil.move(filename,shellOrBat)
        elif filename.endswith("txt"):
            if not os.path.exists(txt):
                os.makedirs(txt)
                print(txt,"文件夹不存在,已生成!")
            shutil.move(filename,txt)
        elif filename.endswith("pdf"):
            if not os.path.exists(pdf):
                os.makedirs(pdf)
                print(pdf,"文件夹不存在,已生成!")
            shutil.move(filename,pdf)
        elif filename.endswith("doc") or filename.endswith("docx"):
            if not os.path.exists(word):
                os.makedirs(word)
                print(word,"文件夹不存在,已生成!")
            shutil.move(filename,word)
        elif filename.endswith("gz") or filename.endswith("zip"):
            if not os.path.exists(tar):
                os.makedirs(tar)
                print(tar,"文件夹不存在,已生成!")
            shutil.move(filename,tar)
        else:
            if not os.path.exists(unknowFile):
                os.makedirs(unknowFile)
                print(unknowFile,"文件夹不存在,已生成!")
            shutil.move(filename,unknowFile)
            print("无分类的文件: "+filename)
        #print(filename)
    print("====================移动目录开始==================================")
    for var in tt[0][1]:
        tempdir=dp+"\\"+var
        shutil.move(tempdir,dirss+"\\"+var)
        print("移动"+tempdir+"到"+dirss+"路径完毕.......")




#开始分类
beginWork(dirpath)


运行效果如下所示:
D:\python\python.exe D:/pythonide/pythonprojectworkspace/python进阶/操作IO/fo.py
文件夹总数量:  27 文件总数据量:  27 总共文件数: 54
====================移动文件开始==================================
C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\pic图片\ 文件夹不存在,已生成!
C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\csv文件\ 文件夹不存在,已生成!
C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\各种压缩包\ 文件夹不存在,已生成!
C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\txt\ 文件夹不存在,已生成!
C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\未分类文件\ 文件夹不存在,已生成!
无分类的文件: C:\Users\qindongliang\Desktop\存档\\ersave.dat
C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\shell脚本或bat文件\ 文件夹不存在,已生成!
C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\word\ 文件夹不存在,已生成!
无分类的文件: C:\Users\qindongliang\Desktop\存档\\hadoop-metrics2.properties
无分类的文件: C:\Users\qindongliang\Desktop\存档\\hosts
无分类的文件: C:\Users\qindongliang\Desktop\存档\\hrider.7z
C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\chm\ 文件夹不存在,已生成!
C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\jar包\ 文件夹不存在,已生成!
C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\java的相关\ 文件夹不存在,已生成!
C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\pdf\ 文件夹不存在,已生成!
====================移动目录开始==================================
移动C:\Users\qindongliang\Desktop\存档\\360wenjianhuifu到C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\各种文件夹\路径完毕.......
移动C:\Users\qindongliang\Desktop\存档\\apache-curator-2.6.0-source-release到C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\各种文件夹\路径完毕.......
移动C:\Users\qindongliang\Desktop\存档\\bbb到C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\各种文件夹\路径完毕.......
移动C:\Users\qindongliang\Desktop\存档\\curatorlib到C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\各种文件夹\路径完毕.......
移动C:\Users\qindongliang\Desktop\存档\\data到C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\各种文件夹\路径完毕.......
移动C:\Users\qindongliang\Desktop\存档\\dhgate-lganalysis-impl到C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\各种文件夹\路径完毕.......
移动C:\Users\qindongliang\Desktop\存档\\easyrecover6.0到C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\各种文件夹\路径完毕.......
移动C:\Users\qindongliang\Desktop\存档\\etc到C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\各种文件夹\路径完毕.......
移动C:\Users\qindongliang\Desktop\存档\\fdfdfd到C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\各种文件夹\路径完毕.......
移动C:\Users\qindongliang\Desktop\存档\\hadoop2.2一键安装到C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\各种文件夹\路径完毕.......
移动C:\Users\qindongliang\Desktop\存档\\hadoopconf到C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\各种文件夹\路径完毕.......
移动C:\Users\qindongliang\Desktop\存档\\hadoopsys到C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\各种文件夹\路径完毕.......
移动C:\Users\qindongliang\Desktop\存档\\hadoop安装脚本到C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\各种文件夹\路径完毕.......
移动C:\Users\qindongliang\Desktop\存档\\hbaseconf到C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\各种文件夹\路径完毕.......
移动C:\Users\qindongliang\Desktop\存档\\hrider到C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\各种文件夹\路径完毕.......
移动C:\Users\qindongliang\Desktop\存档\\lib到C:\Users\qindongliang\Desktop\2014年整理\2014年9月份整理\各种文件夹\路径完毕.......

Process finished with exit code -1


完成后,随便打开几个截图如下:






其实这也没啥技术含量,就是拷贝,目录,判断分类,移动文件或文件夹等,随便用什么语言写都可以完成,最后如果是在桌面运行,可以指定定义一个目录或文件列表,不被移除,比如windows自带的那几个,最好是把所有的杂项文件,放在一个桌面上的文件夹里,这样以来,就可以直接使用了。

  • 大小: 62.7 KB
  • 大小: 73.9 KB
  • 大小: 121.2 KB
  • 大小: 142.7 KB
3
2
分享到:
评论

相关推荐

    python桌面动画挂件

    【Python桌面动画挂件】是一种使用Python编程语言创建的桌面应用程序,它允许用户在桌面上展示类似GIF的动态图像,通常称为桌面挂件或桌面宠物。这些挂件不仅可以为桌面增添趣味性,还能根据用户的个性化需求进行...

    python 实现桌面宠物源码

    Python语言可以用来编写桌面宠物程序。桌面宠物是一种可爱的虚拟宠物,可以定制外观,行为,反应,以及它们如何和用户互动。桌面宠物程序可以帮助用户在空闲时间里放松心情,改善情绪,节省时间,还能增加乐趣。 ...

    python王者荣耀小助手源码

    【Python王者荣耀小助手源码】项目是一个利用Python编程语言实现的辅助工具,旨在帮助玩家获取并分析王者荣耀游戏的相关信息。这个项目结合了网络爬虫技术和GUI(图形用户界面)编程,利用Tkinter库来创建用户友好的...

    Python实战示例 桌面宠物.zip

    Python实战桌面宠物Python实战桌面宠物Python实战桌面宠物Python实战桌面宠物Python实战桌面宠物Python实战桌面宠物Python实战桌面宠物Python实战桌面宠物Python实战桌面宠物Python实战桌面宠物Python实战桌面宠物...

    基于Python实现电影小助手.rar

    《基于Python实现电影小助手》 在现代生活中,电影已经成为我们休闲娱乐的重要组成部分。而借助编程技术,我们可以创建个性化的电影助手,以满足特定的观影需求。本项目以Python为工具,结合网络爬虫、数据分析等...

    Python 实例 - 桌面宠物 Python源码

    Python 实例 - 桌面宠物 Python源码Python 实例 - 桌面宠物 Python源码Python 实例 - 桌面宠物 Python源码Python 实例 - 桌面宠物 Python源码Python 实例 - 桌面宠物 Python源码Python 实例 - 桌面宠物 Python源码...

    Python-生活小助手使用python编写的一些小工具用于提高生活效率

    2. **自动化脚本**:通过编写Python脚本,可以实现文件批量处理、数据整理、网络监控等功能,减轻重复劳动。 3. **信息检索与分析**:利用Python的网络爬虫技术,可以抓取并分析网络上的信息,如天气预报、新闻动态...

    Python盯盘小助手

    学习股票交易有一段时间了,还未逃脱盯盘的 初级阶段,索性写了一段微信盯盘脚本,将账户信息实时发送到微信助手中

    python实现桌面壁纸自动更换(附源码)

    在Python编程领域,桌面壁纸自动更换是一个常见的应用场景,它可以为用户带来个性化的桌面体验。本文将详细介绍如何使用Python实现这一功能,并分析提供的源代码文件。 首先,我们要了解Python中的几个关键概念和...

    桌面清理工具

    该“桌面清理工具”是一个基于Python编程语言开发的应用程序,设计用于帮助用户整理和清理个人计算机的桌面。通过这款工具,用户可以自定义需要保留的文件类型,使得桌面保持整洁,同时确保重要的文件不会被误删除。...

    【工具+源代码】python开发一个桌面文档整理工具,可指定文件路径,有护眼模式开启/关闭功能

    python开发的桌面文档整理工具,可指定文件路径,有护眼模式开启/关闭功能 1、可以指定该文件路径,将文档按照不同的文件类型进行整理 2、护眼模式,由于工作长时间盯着电脑屏幕,易造成眼部疲劳,可在桌面助手勾选...

    Python tkinter 桌面便签程序.py

    用Python tkinter 开发的桌面便签程序 支持拖动、新建、保存、多种颜色主题等丰富多样的功能 详细教程见 https://blog.csdn.net/weixin_48448842/article/details/118046643

    Python脚本项目源码-桌面宠物

    **Python桌面宠物项目详解** Python作为一种强大的编程语言,不仅在Web开发、数据分析、人工智能等领域有广泛应用,而且在创建桌面应用方面也有着不俗的表现。"Python脚本项目源码-桌面宠物"就是一个典型的例子,它...

    python 桌面宠物源码

    Python 桌面宠物是一种利用 Python 编程语言制作的小型程序,它可以作为用户的桌面伴侣,展示各种互动行为,提供实用功能或者娱乐效果。在 Python 中实现桌面宠物,主要涉及图形用户界面(GUI)编程、事件处理以及...

    Python-一个电脑桌面自动化操作框架

    Python桌面自动化操作框架,通常指的是能够模拟用户在计算机桌面环境中的各种交互行为,如点击、输入、拖放等,以实现自动化的工具。这个名为"self-driving-desktop-master"的项目,很可能是一个开源的Python框架,...

    python制作一个桌面便签软件

    # 2014.10.15 更新了memo.zip, 网盘的exe:修复:1.隔日启动不能正常加载json,加入:1.隐藏任务栏图标,2....即可用作桌面图标 程序在ubuntu测试基本没发现什么错误 注:第一次运行,由于没有便签内容,所以有可

    python桌面助手x32.rar

    【Python桌面助手x32.rar】是一个基于Python编程语言开发的桌面应用程序,主要功能是提供一个便捷的快捷方式管理平台,允许用户快速访问和管理电脑上的文件夹、网页链接以及各种快捷方式。这个桌面助手旨在优化用户...

    华中农业大学python课程资料整理分享.zip

    华中农业大学python课程资料整理分享.zip华中农业大学python课程资料整理分享.zip华中农业大学python课程资料整理分享.zip华中农业大学python课程资料整理分享.zip华中农业大学python课程资料整理分享.zip华中农业...

    一款Python动物机器人桌面控制系统源码(毕业设计)

    标题中的“一款Python动物机器人桌面控制系统源码(毕业设计)”揭示了这是一个使用Python编程语言编写的项目,目的是实现对动物机器人的桌面控制。这样的系统通常涉及到人机交互,可能是通过图形用户界面(GUI)来...

Global site tag (gtag.js) - Google Analytics