저는 파이썬을 그다지 좋아하지는 않지만 유닉스 쉘스크립트 보단 낫다고 생각하며 딱 그 수준으로만 쓰고 있습니다.
누구는 파이썬으로 몇천~몇만 라인 되는 프로그램을 작성하기도 한다는데, 저는 몇화면 넘어가게 짜본적이 없네요.
그런 목적이 필요하면 걍 자바로 짭니다. -.-
어쨌거나.. 본인의 스크립트 기록 목적 등의 이유로 종종 작성한 파이썬 스크립트를 올려볼까 합니다.
저는 파이썬 코딩 레벨은 초급이며 더 나은 기법 등에 큰 관심이 없습니다.. 걍 특정 문제를 해결하면 그만..
(제 코드에서 뭔가 배울건 아마 없다는 뜻 ㅋ)
오늘의 문제:
마구 다운로드한 다량의 *.torrent 파일들을 노가다없이 transmission-daemon 에 등록하고 싶다..
배경설명:
저는 토런트 프로그램으로 리눅스 서버에서 transmission 을 돌리며, 메인 PC 는 항상 켜두지는 않는 윈도 입니다. 윈도에서는 uTorrent 등이 .torrent 파일을 다운로드하면 자동으로 감지하여 등록하고 다운로드를 시작한다고도 하는데, 리눅스에서 도는 transmission 에서 다운로드하려면 transmission remote gui 라는 프로그램을 써서 .torrent 파일을 전달해야 하는데, 자동 기능이 없으며 한번에 하나씩만 추가할 수 있습니다.
가끔 한두개 .torrent 파일을 다운받을때는 걍 마우스로 찍어가며 등록하면 되지만, 모 사이트에서 폭풍 갈무리한 .torrent 파일이 수십, 수백개 된다면 이거 하나하나 등록하는 것은 짜증나는 일이지요..
해결책:
다운로드한 .torrent 파일들을 리눅스 서버로 전송하고, 서버에서 파이썬으로 이 파일들을 쭉 등록하는 스크립트를 작성, 실행한다.
PC 에서 다운로드한 파일들을 my_torrent_dir 에 전송하고 (위 스크립트가 있는 위치로 부터 상대 패스)
스크립트를 실행시키면 .torrent 파일들이 순식간에 등록되고, 다운로드가 시작됩니다. 저장될 베이스 디렉토리는 /var/lib/transmission-daemon/downloads/mydir 입니다. 모니터링은 transmission remote gui 프로그램을 쓰면 되고요..
항상 감사히 쓰고 있는 transmission 은 정말 위대한 프로그램입니다 ㅠㅠ
누구는 파이썬으로 몇천~몇만 라인 되는 프로그램을 작성하기도 한다는데, 저는 몇화면 넘어가게 짜본적이 없네요.
그런 목적이 필요하면 걍 자바로 짭니다. -.-
어쨌거나.. 본인의 스크립트 기록 목적 등의 이유로 종종 작성한 파이썬 스크립트를 올려볼까 합니다.
저는 파이썬 코딩 레벨은 초급이며 더 나은 기법 등에 큰 관심이 없습니다.. 걍 특정 문제를 해결하면 그만..
(제 코드에서 뭔가 배울건 아마 없다는 뜻 ㅋ)
오늘의 문제:
마구 다운로드한 다량의 *.torrent 파일들을 노가다없이 transmission-daemon 에 등록하고 싶다..
배경설명:
저는 토런트 프로그램으로 리눅스 서버에서 transmission 을 돌리며, 메인 PC 는 항상 켜두지는 않는 윈도 입니다. 윈도에서는 uTorrent 등이 .torrent 파일을 다운로드하면 자동으로 감지하여 등록하고 다운로드를 시작한다고도 하는데, 리눅스에서 도는 transmission 에서 다운로드하려면 transmission remote gui 라는 프로그램을 써서 .torrent 파일을 전달해야 하는데, 자동 기능이 없으며 한번에 하나씩만 추가할 수 있습니다.
가끔 한두개 .torrent 파일을 다운받을때는 걍 마우스로 찍어가며 등록하면 되지만, 모 사이트에서 폭풍 갈무리한 .torrent 파일이 수십, 수백개 된다면 이거 하나하나 등록하는 것은 짜증나는 일이지요..
해결책:
다운로드한 .torrent 파일들을 리눅스 서버로 전송하고, 서버에서 파이썬으로 이 파일들을 쭉 등록하는 스크립트를 작성, 실행한다.
import os
tordir = "my_torrent_dir"
cnt = 1
for filename in os.listdir(tordir):
dot = filename.rfind('.')
ext = filename[dot+1:].lower()
if ext != "torrent":
continue
srcpath = os.path.join(tordir, filename)
cmd = "transmission-remote --add %s --download-dir /var/lib/transmission-daemon/downloads/mydir --auth myuserid:mypasswd" % (srcpath)
os.system(cmd)
print "%d %s" % (cnt, srcpath)
cnt = cnt +1
my~ 로 시작하는 것들은 키워드가 아니라 알아서 바꿔 쓰라는 의미지요..
PC 에서 다운로드한 파일들을 my_torrent_dir 에 전송하고 (위 스크립트가 있는 위치로 부터 상대 패스)
스크립트를 실행시키면 .torrent 파일들이 순식간에 등록되고, 다운로드가 시작됩니다. 저장될 베이스 디렉토리는 /var/lib/transmission-daemon/downloads/mydir 입니다. 모니터링은 transmission remote gui 프로그램을 쓰면 되고요..
항상 감사히 쓰고 있는 transmission 은 정말 위대한 프로그램입니다 ㅠㅠ
'취미코딩' 카테고리의 다른 글
| 다수의 .torrent 파일을 일괄 등록하기 (0) | 2012/01/18 |
|---|---|
| WebP 는 Indexed Color Format 에 적합하지 않은듯.. (1) | 2011/12/25 |
| MP3 ID3 태그 개요 (0) | 2011/10/31 |
| JSTL fmt:message 와 한글 (0) | 2011/05/15 |
| IntelliJ IDEA 에서 Google App Engine 실행하기 (2) | 2011/05/04 |
| 문자왔숑 알림음 설정앱 (0) | 2011/04/20 |

