一、起因
demo 的基本功能是 將u盤的所有內容拷貝到電腦上的指定位置,或者 將電腦上的指定檔案拷貝到 u盤上。
二、**
importos, shutil, psutil
from datetime import
datetime
#檢測u盤並返回碟符
defget_udisk():
""":return: 返回u盤碟符
"""disks = psutil.disk_partitions(all=false) #
獲取磁碟完整資訊
for disk in
disks:
disk =str(disk)
if disk.find("
removable
") > -1:
l = disk.find("',"
) udisk = (disk[18:l])
return
udisk
print("
未檢測到u盤插入!")
#檢測目錄是否有檔案存在
defhas_file(path):
""":param path: 目標路徑
:return:
"""for parent, dir_names, file_names in
os.walk(path):
iffile_names:
return
true
#複製檔案
defbackup(target, backup_path):
""":param target: 目標路徑
:param backup_path: 備份路徑
:return:
"""#
如果目標不存在檔案,則沒有必要執行複製操作
ifnot
has_file(target):
print("
'' 目錄下不存在檔案!
".format(target))
return
#備份檔案名、路徑
backup_file = "
backup_
" + datetime.now().strftime("
%y%m%d%h%m%s")
backup_file_path = backup_path + '
\\' +backup_file
#已存在備份就刪除它
ifos.path.exists(backup_file_path):
shutil.rmtree(backup_file_path)
#備份檔案
ifos.path.exists(target):
shutil.copytree(target,os.path.join(backup_path, backup_file))
print("
已成功備份!")
defmain(target, isbackup):
udisk =get_udisk()
ifudisk:
ifisbackup:
backup(target=udisk, backup_path=target) #
從u盤備份到target
else
: backup(target=target, backup_path=udisk) #
從target備份到u盤
if__name__ == '
__main__':
target = r"
c:\users\administrator\desktop\test
"isbackup = true #
ture:從u盤備份到target false:從target備份到u盤
main(target, isbackup)
禁止U盤拷貝檔案
u盤不能從電腦拷貝檔案,而u盤可以往電腦內拷貝檔案,也就是為了防止電腦的資料被複製。開啟登錄檔 hkey local machine system currentcontrolset control storagedevicepolicies 右鍵單擊storagedevicepolicies,新建...
Linux下U盤拷貝檔案
建立乙個資料夾 mkdir mnt usb 掛載u盤 掛u盤之前,執行命令cat proc partitions,看看現在系統中有哪些分割槽。插上u盤以後,再次執行上述命令,看看多出來什麼分割槽 通常是sda1,ps由於偶是在虛擬機器下裝的,所以是sdb1 1 插入u盤 2 輸入 fdisk l d...
linux系統掛載u盤拷貝檔案
linux系統在不能遠端的情況下用u盤傳檔案 比如伺服器裝上系統還沒配ip 需要先將u盤掛載到系統中的某個位置,再使用cp命令拷貝檔案,簡要步驟如下 1 把u盤插入linux電腦,確保u盤指示燈是亮著的。進入linux系統主介面,按ctrl alt t開啟命令視窗,先獲取高階使用者許可權,輸入命令 ...