rnr 0.1.5

rnr is a command-line tool to batch rename files
rnr-0.1.5 is not a library.

RnR

Build Status Build status Crates.io License

rnr is a command-line tool to batch rename files.

Install

RnR is written in Rust. You can build it from source using Cargo.

From git repository

git clone https://github.com/ChuckDaniels87/rnr .
cargo install

From Crates.io

cargo install rnr

Arch Linux

A package is available in the AUR (rnr) to install latest version of RnR on Arch Linux.

Options

USAGE:
    rnr [FLAGS] [OPTIONS] <EXPRESSION> <REPLACEMENT> <FILE(S)>...

FLAGS:
    -b, --backup     Generate file backups before renaming
    -n, --dry-run    Only show what would be done (default mode)
    -f, --force      Make actual changes to files
    -h, --help       Prints help information
    -x, --hidden     Include hidden files and directories
    -s, --silent     Do not print any information
    -V, --version    Prints version information

OPTIONS:
        --color <color>        Set color output mode [default: auto]
                               [possible values: always, auto, never]
    -d, --max-depth <LEVEL>    Set max depth in recursive mode
    -r, --recursive <PATH>     Recursive mode

ARGS:
    <EXPRESSION>     Expression to match (can be a regex)
    <REPLACEMENT>    Expression replacement
    <FILE(S)>...     Target files

Default behavior

  • Dry-run by default.
  • Only UTF-8 valid input arguments and filenames.
  • Works on files and symlinks (ignores directories).
  • Accepts multiple files as arguments.
  • Accepts a regex to generate matches. These expressions have same limitations of regex crate. It supports capture groups.
  • If max depth is not provided to recursive mode, it is assumed infinite.
  • Does not generate backups.
  • Output is colored (only ANSI terminals).
  • Ignore hidden files and directories.

Demo

Demo