('d', False, '', 'ディレクトリのみ表示'), ('e', False, '', 'ツリーの表示に拡張文字を使用'), ('h', False, '', '使い方を表示する'), ('help', False, '', '使い方を表示する'), ] opp = mp.OpSet(pms) mp.miniparse(opp, sys.argv) if opp.isTrue('h') or opp.isTrue('help'): print('ディレクトリやファイルのツリーを表示します。') print() mp.printUsage('', opp, mp.Umode.BOTH) sys.exit(0) args = mp.get_arguments() if args: path = pathlib.Path(args[0]) if not path.is_dir(): print(f'無効なディレクトリです {path}', file=sys.stderr) sys.exit(1) else: path = pathlib.Path('.') # dispFiles = True # dispAll = False dispTreeLevel = 0 if opp.isTrue('a'): dispAll = True
stillremain = mp.miniparse(opp, sys.argv) ''' miniparseの呼び出し、ここまで ''' ''' オプションの取得 ''' # mp.printOpset(opp) for op in opp.get_keys(): if opp.isTrue(op): if len(op) == 0 and opp.get_opArg(op): print('コマンド引数が入力された。', opp.get_opArg(op)) if len(op) == 1: print(f'option -{op} が指定された。', f'オプション引数 = {opp.get_opArg(op)}' if opp.get_opArg(op) else '') if len(op) > 1: print(f'option --{op} が指定された。', f'オプション引数 = {opp.get_opArg(op)}' if opp.get_opArg(op) else '') ''' コマンド引数の取得 ''' arglist = mp.get_arguments() if arglist: print() print('コマンド引数リスト = ') for arg in arglist: print(f" '{arg}'") print() remain_arglist = mp.get_remainArgs() print('残りのコマンドラインリスト = ') for arg in remain_arglist: print(f" '{arg}'")