PHP 7.4.33
Preview: rgrep.py Size: 1.46 KB
/lib64/python2.7/Tools/scripts/rgrep.py

#! /usr/bin/python2.7

"""Reverse grep.

Usage: rgrep [-i] pattern file
"""

import sys
import re
import getopt

def main():
    bufsize = 64*1024
    reflags = 0
    opts, args = getopt.getopt(sys.argv[1:], "i")
    for o, a in opts:
        if o == '-i':
            reflags = reflags | re.IGNORECASE
    if len(args) < 2:
        usage("not enough arguments")
    if len(args) > 2:
        usage("exactly one file argument required")
    pattern, filename = args
    try:
        prog = re.compile(pattern, reflags)
    except re.error, msg:
        usage("error in regular expression: %s" % str(msg))
    try:
        f = open(filename)
    except IOError, msg:
        usage("can't open %s: %s" % (repr(filename), str(msg)), 1)
    f.seek(0, 2)
    pos = f.tell()
    leftover = None
    while pos > 0:
        size = min(pos, bufsize)
        pos = pos - size
        f.seek(pos)
        buffer = f.read(size)
        lines = buffer.split("\n")
        del buffer
        if leftover is None:
            if not lines[-1]:
                del lines[-1]
        else:
            lines[-1] = lines[-1] + leftover
        if pos > 0:
            leftover = lines[0]
            del lines[0]
        else:
            leftover = None
        lines.reverse()
        for line in lines:
            if prog.search(line):
                print line

def usage(msg, code=2):
    sys.stdout = sys.stderr
    print msg
    print __doc__
    sys.exit(code)

if __name__ == '__main__':
    main()

Directory Contents

Dirs: 0 × Files: 192

Name Size Perms Modified Actions
4.11 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
4.64 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
4.64 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
3.85 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
4.42 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
4.42 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.60 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
1.37 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.37 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
4.55 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
4.77 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
4.77 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
757 B lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
1.02 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.02 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.96 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
1.93 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.93 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
5.81 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
4.09 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
4.09 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
8.38 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
7.22 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
7.19 KB lrw-r--r-- 2024-04-10 04:58:44
Edit Download
4.28 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
4.16 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
4.12 KB lrw-r--r-- 2024-04-10 04:58:44
Edit Download
663 B lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
937 B lrw-r--r-- 2024-04-10 04:58:46
Edit Download
937 B lrw-r--r-- 2024-04-10 04:58:46
Edit Download
610 B lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
855 B lrw-r--r-- 2024-04-10 04:58:46
Edit Download
855 B lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.74 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
2.11 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
2.11 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
3.49 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
3.42 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
3.42 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
2.02 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
2.33 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
2.33 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.58 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
2.18 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
2.18 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.45 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
1.83 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.83 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
2.46 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
3.22 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
3.22 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.04 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
1.39 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.39 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
2.74 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
3.13 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
3.13 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
3.39 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
5.54 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
5.54 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
9.76 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
7.67 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
7.67 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
13.52 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
13.52 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
13.44 KB lrw-r--r-- 2024-04-10 04:58:44
Edit Download
1.16 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
1.44 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.44 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
2.98 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
3.42 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
3.42 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
893 B lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
969 B lrw-r--r-- 2024-04-10 04:58:46
Edit Download
969 B lrw-r--r-- 2024-04-10 04:58:46
Edit Download
519 B lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
792 B lrw-r--r-- 2024-04-10 04:58:46
Edit Download
792 B lrw-r--r-- 2024-04-10 04:58:46
Edit Download
2.12 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
2.22 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
2.22 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
5.81 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
4.29 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
4.29 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.45 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
1.82 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.82 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
3.63 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
2.21 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
2.21 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
618 B lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
880 B lrw-r--r-- 2024-04-10 04:58:46
Edit Download
880 B lrw-r--r-- 2024-04-10 04:58:46
Edit Download
2.37 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
1.98 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.98 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
742 B lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
942 B lrw-r--r-- 2024-04-10 04:58:46
Edit Download
942 B lrw-r--r-- 2024-04-10 04:58:46
Edit Download
5.44 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
4.96 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
4.96 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
7.76 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
7.19 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
7.19 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
2.33 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
2.85 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
2.85 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
5.33 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
4.03 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
4.03 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.59 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
1.93 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.93 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
3.72 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
3.77 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
3.77 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
2.39 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
2.89 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
2.89 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
5.88 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
4.82 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
4.82 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.68 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
2.03 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
2.03 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
7.50 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
8.91 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
8.91 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
4.23 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
3.75 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
3.75 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
3.84 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
3.14 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
3.14 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
3.85 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
3.73 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
3.73 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
16.77 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
11.29 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
11.29 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.20 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
1.37 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.37 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
3.76 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
3.92 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
3.92 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
5.66 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
5.13 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
5.13 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
278 B lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
481 B lrw-r--r-- 2024-04-10 04:58:46
Edit Download
481 B lrw-r--r-- 2024-04-10 04:58:46
Edit Download
11.15 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
9.40 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
9.37 KB lrw-r--r-- 2024-04-10 04:58:44
Edit Download
1.46 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
1.84 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.84 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.12 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
1.56 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.56 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
421 B lrw-r--r-- 2024-04-10 04:58:41
Edit Download
548 B lrw-r--r-- 2024-04-10 04:58:46
Edit Download
548 B lrw-r--r-- 2024-04-10 04:58:46
Edit Download
621 B lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
904 B lrw-r--r-- 2024-04-10 04:58:46
Edit Download
904 B lrw-r--r-- 2024-04-10 04:58:46
Edit Download
2.86 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
2.84 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
2.76 KB lrw-r--r-- 2024-04-10 04:58:44
Edit Download
9.04 KB lrw-r--r-- 2024-04-10 04:58:41
Edit Download
8.18 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
8.18 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
68.19 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
81.37 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
81.37 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
5.65 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
5.85 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
5.85 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.19 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
1.55 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.55 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.59 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
1.59 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.59 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
1.58 KB lrw-r--r-- 2024-04-10 04:58:41
Edit Download
2.02 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
2.02 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
2.73 KB lrwxr-xr-x 2024-04-10 04:58:41
Edit Download
3.92 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download
3.92 KB lrw-r--r-- 2024-04-10 04:58:46
Edit Download

If ZipArchive is unavailable, a .tar will be created (no compression).