您好,登錄后才能下訂單哦!
利用python實(shí)現(xiàn)清除移動(dòng)硬盤(pán)中的臨時(shí)文件?針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。
首先,我們需要循環(huán)檢測(cè)PC的驅(qū)動(dòng)器,判斷是否存在可移動(dòng)的磁盤(pán)。
# 循環(huán)遍歷,對(duì)每一個(gè)驅(qū)動(dòng)器進(jìn)行判斷 while True: for item in disk_partitions(): if 'removable' in item.opts: driver, opts = item.device, item.opts # 刪除臨時(shí)文件 pass break else: continue # 休眠5s,繼續(xù)遍歷 sleep(5)
如果檢測(cè)到存在可移動(dòng)的磁盤(pán),就遍歷文件,刪除Mac臨時(shí)文件。
def remove_all_file(filepath, file_name): """ 刪除 MAC 臨時(shí)文件 :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可執(zhí)行文件。
# 安裝 pyinstaller pip3 install pyinstaller # 把 py 文件打包成 exe 可執(zhí)行文件 # 圖標(biāo):img.ico pyinstaller -F -i img.ico del_mac_files.py
為了保證程序一直在后臺(tái)運(yùn)行,我們需要?jiǎng)?chuàng)建一個(gè)系統(tǒng)服務(wù),讓將可執(zhí)行文件一直在后臺(tái)執(zhí)行。
instsrv.exe和srvany.exe這兩個(gè)文件可以非常方便的創(chuàng)建系統(tǒng)服務(wù)。其中,instsrv.exe用于創(chuàng)建、刪除服務(wù);srvany.exe用于保障服務(wù)能正常啟動(dòng)。
# 注冊(cè)服務(wù) # instsrv.exe 服務(wù)名 srvany.exec:\instsrv.exe del_mac_tempfile c:\srvany.exe
需要注意的是,運(yùn)行注冊(cè)服務(wù)命令時(shí),需要以管理員權(quán)限運(yùn)行CMD來(lái)執(zhí)行。
注冊(cè)完服務(wù)之后,還需要通過(guò)注冊(cè)表把服務(wù)和可執(zhí)行程序關(guān)聯(lián)起來(lái)。
# 注冊(cè)表服務(wù)的目錄 HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\
在注冊(cè)表中找到上面創(chuàng)建的服務(wù),新建一個(gè)Parameters的項(xiàng),在項(xiàng)內(nèi)再創(chuàng)建兩個(gè)字符串,分別指向可執(zhí)行文件和可執(zhí)行文件的完整目錄。
最后,services.msc命令打開(kāi)服務(wù)管理,找到目標(biāo)服務(wù),設(shè)置允許服務(wù)和桌面交互,設(shè)置開(kāi)啟服務(wù)并設(shè)置為自啟。
關(guān)于利用python實(shí)現(xiàn)清除移動(dòng)硬盤(pán)中的臨時(shí)文件問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開(kāi),可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識(shí)。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。