root/livinglogic.python.xist/src/ll/scripts/ucat.py @ 3795:4ed9132f3c43

Revision 3795:4ed9132f3c43, 1.6 KB (checked in by Walter Doerwald <walter@…>, 10 years ago)

Remove unused future imports.

Line 
1#!/usr/local/bin/python
2# -*- coding: utf-8 -*-
3
4
5## Copyright 2007-2009 by LivingLogic AG, Bayreuth/Germany.
6## Copyright 2007-2009 by Walter Dörwald
7##
8## All Rights Reserved
9##
10## See ll/__init__.py for the license
11
12
13import sys, optparse, contextlib, errno
14
15from ll import url
16
17try:
18    import astyle
19except ImportError:
20    from ll import astyle
21
22try:
23    from ll import orasql # activate the oracle scheme
24except ImportError:
25    pass
26
27
28def main(args=None):
29    def catone(urlread):
30        if urlread.isdir():
31            if options.recursive:
32                for u in urlread.listdir():
33                    catone(urlread/u)
34            else:
35                raise IOError(errno.EISDIR, "Is a directory", str(urlread))
36        else:
37            try:
38                with contextlib.closing(urlread.open("rb")) as fileread:
39                    size = 0
40                    while True:
41                        data = fileread.read(262144)
42                        if data:
43                            sys.stdout.write(data)
44                        else:
45                            break
46            except Exception:
47                if not options.ignoreerrors:
48                    raise
49
50    colors = ("yes", "no", "auto")
51    p = optparse.OptionParser(usage="usage: %prog [options] source-file-url target-file-url\n   or: %prog [options] source-file-url(s) target-dir-url")
52    p.add_option("-v", "--verbose", dest="verbose", help="Be verbose?", action="store_true", default=False)
53    p.add_option("-r", "--recursive", dest="recursive", help="Copy stuff recursively?", action="store_true", default=False)
54    p.add_option("-x", "--ignoreerrors", dest="ignoreerrors", help="Ignore errors?", action="store_true", default=False)
55   
56    (options, args) = p.parse_args(args)
57    if len(args) < 1:
58        p.error("need at least one url")
59        return 1
60
61    with url.Context():
62        for arg in args:
63            catone(url.URL(arg))
64
65
66if __name__ == "__main__":
67    sys.exit(main())
Note: See TracBrowser for help on using the browser.