亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Python實現移動硬盤的案例

發布時間:2020-07-20 13:59:41 來源:億速云 閱讀:495 作者:清晨 欄目:編程語言

這篇文章將為大家詳細講解有關Python實現移動硬盤的案例,小編覺得挺實用的,因此分享給大家做個參考,希望大家閱讀完這篇文章后可以有所收獲。

1、目標場景

用過Mac OS的朋友應該都遇到過,日常的文件操作會在同級目錄下產生一些特定的臨時文件。

平常將文件夾打包成壓縮包或拷貝文件夾到移動硬盤內,臨時文件會包含在里面,如果是程序源代碼,在Windows系統下編譯有時候還會受到影響。

本篇文章的目的是在移動硬盤插入到電腦的同時,利用Python自動化和Windows服務刪除掉這些臨時文件。

2、編寫代碼

首先,我們需要循環檢測PC的驅動器,判斷是否存在可移動的磁盤。

# 循環遍歷,對每一個驅動器進行判斷
while True:
        for item in disk_partitions():
            if 'removable' in item.opts:
                driver, opts = item.device, item.opts
                # 刪除臨時文件
                pass
                break
            else:
                continue
        # 休眠5s,繼續遍歷
        sleep(5)

如果檢測到存在可移動的磁盤,就遍歷文件,刪除Mac臨時文件。

def remove_all_file(filepath, file_name):
    """
    刪除 MAC 臨時文件
    :param file_name:
    :return:
    """
    for root, dirs, files in os.walk(filepath):
        for name in files:
            print(name)
            if name.startswith("._") or name == file_name:
                os.remove(os.path.join(root, name))

接著,我們利用pyinstaller將Python文件打包成Exe可執行文件。

# 安裝 pyinstaller 
pip3 install pyinstaller 
# 把 py 文件打包成 exe 可執行文件
# 圖標:img.ico
pyinstaller -F -i img.ico  del_mac_files.py

為了保證程序一直在后臺運行,我們需要創建一個系統服務,讓將可執行文件一直在后臺執行。

instsrv.exe和srvany.exe這兩個文件可以非常方便的創建系統服務。其中,instsrv.exe用于創建、刪除服務;srvany.exe用于保障服務能正常啟動。

# 注冊服務
# instsrv.exe 服務名 
srvany.exec:\instsrv.exe del_mac_tempfile c:\srvany.exe

需要注意的是,運行注冊服務命令時,需要以管理員權限運行CMD來執行。

注冊完服務之后,還需要通過注冊表把服務和可執行程序關聯起來。

# 注冊表服務的目錄
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\

在注冊表中找到上面創建的服務,新建一個Parameters的項,在項內再創建兩個字符串,分別指向可執行文件和可執行文件的完整目錄。

Python實現移動硬盤的案例

最后,services.msc命令打開服務管理,找到目標服務,設置允許服務和桌面交互,設置開啟服務并設置為自啟

Python實現移動硬盤的案例

3、結 果 結 論

通過以上注冊的服務,每次插入移動硬盤,都會自動去遍歷移動硬盤盤的文件,查找Mac臨時文件并刪除。

關于Python實現移動硬盤的案例就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

安陆市| 务川| 深州市| 玛沁县| 二手房| 海伦市| 龙井市| 张北县| 嵩明县| 新乡市| 安阳县| 阿尔山市| 五大连池市| 南郑县| 高陵县| 滨州市| 绿春县| 栾川县| 都安| 南华县| 清远市| 申扎县| 南昌县| 多伦县| 高州市| 临沭县| 丹阳市| 宁安市| 陆川县| 湖口县| 抚远县| 尉犁县| 府谷县| 涿州市| 绥芬河市| 磐石市| 壶关县| 五台县| 万宁市| 呼图壁县| 通江县|