Metadata-Version: 1.1
Name: reprec
Version: 2017.25.0
Summary: reprec: Recursively replace strings in files and other goodies
Home-page: https://github.com/guettli/reprec/
Author: Thomas Guettler
Author-email: info.reprec@thomas-guettler.de
License: Apache Software License 2.0
Description-Content-Type: UNKNOWN
Description: .. image:: https://travis-ci.org/guettli/reprec.svg?branch=master
            :target: https://travis-ci.org/guettli/reprec
            
        reprec: Recursively replace strings in files and other goodies
        ==================================================================
        
        Command line tool for text files.
        
        https://github.com/guettli/reprec
        
        Tools
        =====
        
        Up to now there are these tools:
        
         * reprec: Replace strings in text files. Can work recursive in a directory tree
         * setops: Set operations (union, intersection, ...) for line based files.
         
        reprec
        ======
        
        The tool reprec replaces strings in text files::
        
            ===> reprec --help
            Usage: reprec
                     [-p|--pattern] p
                     [-i|--insert] i
                     [-f|--filename regex]
                     [-n|--no-regex]
                     [-v|--verbose]
                     [-a|--ask]
                     [--print-lines]
                     [--dotall]
                     [--ignorecase]
                     [--novcexclude]
                     [--files-from file|-]
                     [--ignore regex]
        
                     dirs
        
                dirs:        Directories or files for replacing. Use is '.' for current dir.
        
                pattern:     Regex pattern.
        
                insert:      Text which gets inserted
        
                filename:    Regex matching the filename. E.g. '.*\.py'
        
                no-regex:    Normal string replacement will be used.
                             This means you can use '.', '*', '[' without quoting
        
                verbose:     Print the number of changes for each file
        
                print-lines: Print the old and the new line for each change.
                             Not available if --dotall is used.
        
                dotall:      In regular expressions '.' matches newlines, too.
                             Not supported with --ask and --print-lines.
        
                ignorecase:  ...
        
                novcexclude: Don't exclude the directories called '.svn' or 'CVS'.
                             By default they get ignored.
        
                ask:         Aks before replacing (interactive).
        
                files-from:  Read filenames from file or stdin if '-'.
                             Skip directories.
        
                ignore:      Ignore lines that match a regular expression.
                             This options can be given several times.
        
                Example:
                 reprec --pattern '(xml)' --insert '\1\1' .
                 -->This will replace all 'xml' with 'xmlxml'
        
                 Or, shorter:
                 reprec '(xml)' '\1\1'
        
                Example2:
                 find -mtime -1 -name '*.py' | reprec --files-from=- foo bar
        
        
                The Perl Compatible Regular Expresssions are explained here:
                  http://docs.python.org/lib/re-syntax.html
        
                The files are created by moving (os.rename()) FILE_RANDOMINTEGER
                to FILE. This way no half written files will be left, if the
                process gets killed. If the process gets killed one FILE_RANDOMINTEGER
                may be left in the filesystem.
        
        setops
        ======
        The tool setops provides set operations (union, intersection, ...) for line based files::
        
            usage: setops [-h] set1 operator set2
        
            Operators: 
              union Aliases: | + or
              intersection Aliases: & and
              difference Aliases: - minus
              symmetric_difference Aliases: ^
        
            Example 1: Show all files in directory "a" which are not in directory "b": 
            setops <(cd a; find ) - <(cd b; find )
        
            Example 2: Show file which do not containt "foo"
            setops <(ls -1 mydir/*.txt) - <(grep -l mydir/*.txt)
        
        
            positional arguments:
              set1
              operator
              set2
        
            optional arguments:
              -h, --help  show this help message and exit
        
        
        
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: Intended Audience :: Information Technology
Classifier: License :: OSI Approved :: Apache Software License
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.5
