diff --git a/pickn.py b/pickn.py new file mode 100644 index 0000000..fb2729e --- /dev/null +++ b/pickn.py @@ -0,0 +1,29 @@ +import argparse +import sys + +from voussoirkit import pipeable + +def shuffle_argparse(args): + if args.count < 1: + pipeable.stderr('count must be >= 1.') + return 1 + + lines = pipeable.input(args.source, read_files=True, skip_blank=True, strip=True) + lines = list(lines) + lines = lines[:args.count] + + for line in lines: + pipeable.stdout(line) + +def main(argv): + parser = argparse.ArgumentParser(description=__doc__) + + parser.add_argument('source') + parser.add_argument('count', type=int) + parser.set_defaults(func=shuffle_argparse) + + args = parser.parse_args(argv) + return args.func(args) + +if __name__ == '__main__': + raise SystemExit(main(sys.argv[1:]))