먼저 컴퓨터 터미널을 열고 /Volumes 디렉터리로 들어갑니다. 이때 U 디스크를 삽입하면 이 디렉터리 아래에 마운트된 것을 확인할 수 있습니다. 즉, 고정된 시간에만 이 디렉터리를 검색하면 됩니다. 이 디렉터리에 새 폴더가 나타나면 USB 플래시 드라이브가 삽입되었을 가능성이 높습니다.
내 디자인은 이렇습니다. time.sleep(3) 함수를 사용하여 프로그램을 계속 실행하고, 3초마다 /Volumes/ 디렉터리를 확인하여 추가 폴더가 있으면 다른 파일에 복사하세요.
제목에서 알 수 있듯이 우리는 이 "바이러스"를 완성하기 위해 실제로 10줄(실제로는 11줄, 전체 숫자를 구성함)만 사용했습니다. USB의 디렉토리는 삽입 후 30분 후에 모두 홈 디렉토리에 배치되는 것을 확인할 수 있습니다.
이 아이디어의 타당성을 테스트하기 위해 아주 간단한 스크립트를 작성했지만 여전히 문제가 있습니다. USB 플래시 드라이브에 있는 모든 파일을 빠르게 복사할 수 있었던 이유는 USB 플래시 드라이브에 파일이 2~3개밖에 없었고, 크기도 15M를 넘지 않았기 때문입니다. 대상 USB 디스크에 필요하지 않은 영화, 음악 및 파일이 많이 있는 경우 프로그램은 이를 건너뛰고 .ppt 파일과 같은 .docx와 같은 일부 중요한 파일만 선택하거나 최근 항목만 복사할 수 있어야 합니다. 수정된 파일을 삭제하거나 크기가 5M보다 큰 모든 파일을 제외합니다. 물론 파이썬으로 할 수 있나요?
예를 들어보겠습니다.
특정 디렉터리에 testwalk 폴더를 만들었습니다. file123.txt라는 세 개의 파일과 폴더123이라는 세 개의 폴더가 있습니다. 현재 위치를 사용하면 ./testwalk/ 아래의 모든 폴더를 루트 디렉터리로 사용하고
디렉토리를 개별적으로 보기
파일을 개별적으로 보기
shutil 모듈
이제 폴더를 예로 들어 보겠습니다. file1.txt를 폴더2로 복사하려는 경우:
os.path.getsize()는 크기를 결정합니다
shutil.copy2와 결합하면 선택한 크기의 파일을 다음으로 복사할 수 있습니다. 대상 폴더
파일 형식을 지정하는 방법
다음과 같이 지정된 파일 접미사와 지정된 파일 크기를 대상 파일에 복사할 수 있습니다.
re를 가져오는 것을 잊지 마세요
파일 형식을 더 잘 지정하려면 더 복잡한 정규식을 사용하세요 수정 시간별 파일 필터링이때 디렉토리에 newfile이라는 파일을 생성했습니다
위 내용은 USB 플래시 드라이브를 연결하고 Python 코드 실행을 시작하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!