Merge branch '2800-python-global-state' into 2800-pgs
[arvados.git] / sdk / python / bin / arv-ls
1 #!/usr/bin/env python
2
3 import argparse
4 import hashlib
5 import os
6 import re
7 import string
8 import sys
9
10 parser = argparse.ArgumentParser(
11     description='List contents of a manifest')
12
13 parser.add_argument('locator', type=str,
14                     help="""
15 Collection locator
16 """)
17
18 parser.add_argument('-s', action='store_true', help="""List file sizes, in KiB.""")
19
20 args = parser.parse_args()
21
22 import arvados
23
24 cr = arvados.CollectionReader(args.locator)
25
26 for f in cr.all_files():
27     if args.s:
28         print "{:>10} {}".format((f.size() + 1023) / 1024,
29                                  f.stream_name() + "/" + f.name())
30     else:
31         print f.stream_name() + "/" + f.name()