Use argparse for inputrename.

master
voussoir 2020-10-25 20:13:59 -07:00
parent ae6954d573
commit 0c481f454f
1 changed files with 30 additions and 8 deletions

View File

@ -3,12 +3,34 @@ import sys
from voussoirkit import winglob
keyword = sys.argv[1]
pattern = f'*{keyword}*'
import argparse
import sys
files = winglob.glob(pattern)
for file in files:
print(file)
this = input('>')
if this:
os.rename(file, file.replace(keyword, this))
def inputrename_argparse(args):
pattern = f'*{args.keyword}*'
files = winglob.glob(pattern)
prev = None
for file in files:
print(file)
this = input('> ')
if this == '' and prev is not None:
this = prev
if this:
os.rename(file, file.replace(args.keyword, this))
prev = this
def main(argv):
parser = argparse.ArgumentParser(description=__doc__)
parser.add_argument('keyword')
parser.set_defaults(func=inputrename_argparse)
args = parser.parse_args(argv)
return args.func(args)
if __name__ == '__main__':
try:
raise SystemExit(main(sys.argv[1:]))
except KeyboardInterrupt:
raise SystemExit(1)