Hatena::Grouppython

nelnal@python

2009-10-19

フッタを付与するプログラム 15:04  フッタを付与するプログラム - nelnal@python を含むブックマーク はてなブックマーク -  フッタを付与するプログラム - nelnal@python

以下を参考にしながら書いた。

http://d.hatena.ne.jp/rintaromasuda/20060722/1153552896

# -*- coding: utf-8 -*-

import sys
import os
import glob
import functools

def add_suffix(filename, suffix):
    root, ext = os.path.splitext(filename)
    return root + suffix + ext

if __name__ == "__main__":
    from optparse import OptionParser
    parser = OptionParser(usage="usage: %prog [options] message")

    parser.add_option("-s", "--suffix", dest="suffix", default="_bk")

    options, args = parser.parse_args()
    print options, args

    if len(args) == 0:
        src_names = [item for item in os.listdir(os.curdir) if os.path.isfile(item)]
        # 実行ファイルは除外
        if __file__ in src_names:
            del src_names[src_names.index(os.path.basename(__file__))]
    else:
        src_names = [item for arg in args for item in glob.glob(arg)]

    conv_name = functools.partial(add_suffix, suffix=options.suffix)
    dest_names = map(conv_name, src_names)

    map(os.rename, src_names, dest_names)

スクリプト自身を表す変数 13:53  スクリプト自身を表す変数 - nelnal@python を含むブックマーク はてなブックマーク -  スクリプト自身を表す変数 - nelnal@python

良く忘れすのでメモ。

print __file__

# その2
import sys
print sys.argv[0]

__file__ の方が手っ取り早いと思う。

トラックバック - http://python.g.hatena.ne.jp/nelnal_programing/20091019