日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
Python 還你一塊純潔無暇的移動(dòng)硬盤

1.目標(biāo)場(chǎng)景

創(chuàng)新互聯(lián)公司從2013年開始,先為庫車等服務(wù)建站,庫車等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為庫車企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

用過 Mac OS 的朋友應(yīng)該都遇到過,日常的文件操作會(huì)在同級(jí)目錄下產(chǎn)生一些特定的臨時(shí)文件。

平常將文件夾打包成壓縮包或拷貝文件夾到移動(dòng)硬盤內(nèi),臨時(shí)文件會(huì)包含在里面,如果是程序源代碼,在 Windows 系統(tǒng)下編譯有時(shí)候還會(huì)受到影響。

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

2.編寫代碼

首先,我們需要循環(huán)檢測(cè) PC 的驅(qū)動(dòng)器,判斷是否存在 可移動(dòng)的磁盤。

 
 
 
 
  1. # 循環(huán)遍歷,對(duì)每一個(gè)驅(qū)動(dòng)器進(jìn)行判斷 
  2. while True: 
  3.         for item in disk_partitions(): 
  4.             if 'removable' in item.opts: 
  5.                 driver, opts = item.device, item.opts 
  6.                 # 刪除臨時(shí)文件 
  7.                 pass 
  8.                 break 
  9.             else: 
  10.                 continue 
  11.  
  12.         # 休眠5s,繼續(xù)遍歷 
  13.         sleep(5) 

如果檢測(cè)到存在可移動(dòng)的磁盤,就遍歷文件,刪除 Mac 臨時(shí)文件。

 
 
 
 
  1. def remove_all_file(filepath, file_name): 
  2.     """ 
  3.     刪除 MAC 臨時(shí)文件 
  4.     :param file_name: 
  5.     :return: 
  6.     """ 
  7.     for root, dirs, files in os.walk(filepath): 
  8.         for name in files: 
  9.             print(name) 
  10.  
  11.             if name.startswith("._") or name == file_name: 
  12.                 os.remove(os.path.join(root, name)) 

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

 
 
 
 
  1. # 安裝 pyinstaller  
  2. pip3 install pyinstaller  
  3.  
  4. # 把 py 文件打包成 exe 可執(zhí)行文件 
  5. # 圖標(biāo):img.ico 
  6. 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)。

 
 
 
 
  1. # 注冊(cè)服務(wù) 
  2. # instsrv.exe 服務(wù)名 srvany.exe 
  3. c:\instsrv.exe del_mac_tempfile c:\srvany.exe 

需要注意的是,運(yùn)行注冊(cè)服務(wù)命令時(shí),需要以管理員權(quán)限運(yùn)行 CMD 來執(zhí)行。

注冊(cè)完服務(wù)之后,還需要通過注冊(cè)表把服務(wù)和可執(zhí)行程序關(guān)聯(lián)起來。

 
 
 
 
  1. # 注冊(cè)表服務(wù)的目錄 
  2. 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 命令打開服務(wù)管理,找到目標(biāo)服務(wù),設(shè)置允許服務(wù)和桌面交互,設(shè)置開啟服務(wù)并設(shè)置為自啟。

3.結(jié)果結(jié)論

通過以上注冊(cè)的服務(wù),每次插入移動(dòng)硬盤,都會(huì)自動(dòng)去遍歷移動(dòng)硬盤盤的文件,查找 Mac 臨時(shí)文件并刪除。


文章標(biāo)題:Python 還你一塊純潔無暇的移動(dòng)硬盤
網(wǎng)站鏈接:http://www.dlmjj.cn/article/djscpoo.html