티스토리 뷰

Development

Python - File Name Hasher

pwnbit 2014. 12. 23. 21:34
반응형

* 개발 언어 : Python 2.7

* 개발 기간 : 2014-12-19

* 개발 목적 : 동일한 파일이 존재하는지 파일명을 변경하여 파악

* 프로그램 설명 : 지정한 폴더의 모든 파일들을 MD5 해쉬시킨 값을 파일명으로 만들어 중복파일 검사

* 버전 히스토리 :

1.0 : MD5해쉬 및 파일 이름 변경 등 기본 기능만 넣고 마무리

1.1 : 작업 완료 후 실패한 파일 목록 출력하도록 추가

1.2 : 작업위치를 절대/상대 경로로 사용자에게 입력받아 지정할 수 있도록 추가

1.3 : 변수명 알기 쉽도록 변경, 변경 작업 시 확장자 소문자로 일괄 변환

1.4 : 오류 번호를 구분하여 에러 메시지 출력

 

 

 

* 프로그램 작동 모습

1) 작업할 폴더 지정 (절대/상대 경로)

 

 

 2) 파일명 변경 모습, 에러 발생 시 원인 출력 (사진은 한 번 변경했던 파일들이라 변경 전/후가 같음)

 

 

3) 작업 완료 시 작업 결과 출력

 

 

4) 파이썬 파일을 클릭하여 바로 CMD로 실행될 때를 위해 작업 결과 출력 후 PAUSE

 

 

 

* 참고 사이트

파일 해시방법
http://joelverhagen.com/blog/2011/02/md5-hash-of-file-in-python/

 

확장자 가져오기
http://lapee79.blogspot.kr/2013/08/python-strings.html
http://yeongeon.tistory.com/58

 

os모듈 설명
http://devanix.tistory.com/304

 

예외처리
https://wikidocs.net/30

 

문자열 출력방법
http://mwultong.blogspot.com/2006/12/python-print-string-number-variable.html

 

파일 입/출력 방법
https://wikidocs.net/26

 

입력과 출력 input() / print()
https://wikidocs.net/25

파이썬 input()과 raw_input()의 차이

http://pwnbit.kr/21

 

 

 

* 제작 결과물 

File Name Hasher 1.4.py

 

나, 혹은 다른 사람이 봐도 최대한 코드 이해가 쉽도록

주석을 과도하다 싶을 정도로 넣었고, 코드도 줄여쓰는걸 자제함..

 

 

사실 다른 사람이 본다기보다 내가 나중에 까먹기 때문에 주석으로 떡칠함..

더 추가할 기능은 없을듯..

이 코드를 응용하면 일괄적으로 파일명을 바꿔야할 때 써먹을 수 있음

(즉, 쓸데 없는 프로그램)

 






반응형
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2024/12   »
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30 31
글 보관함
300x250