8 unstable releases (3 breaking)

0.4.2 Jul 27, 2021
0.4.1 May 26, 2021
0.4.0 Mar 22, 2021
0.3.0 Mar 14, 2021
0.1.1 Feb 15, 2021

#1024 in Filesystem

24 downloads per month


1.5K SLoC

File Rename Search

MIT License Workflow Status Crates.io crev reviews

Rename files with RegEx patterns.



$ frs --help

    frs [FLAGS] [OPTIONS] <search-pattern> <replace-pattern> [base-path]

    -i, --case-insensetive
    -c, --continue-on-error
    -d, --directory            Rename all matching directories. If no type is set, then everything will be renamed
    -n, --dry-run              This is the default and lets you run it without the actual operation
    -f, --file                 Rename all matching files. If no type is set, then everything will be renamed
    -h, --help                 Prints help information
    -r, --run                  Actually running the rename operation. If you want to set this as default, set the
                               environment variable `FRS_DEFAULT_OP` to `RUN`
    -s, --symlink              Rename all matching symlinks. If no type is set, then everything will be renamed
    -T, --traverse-tree        This traverses the Directory Tree. If set, the renaming of directories will be disabled
                               by default, to prevent the renaming of a directory and its inner files
    -V, --version              Prints version information
    -v, --verbose              Set the verbosity. In a dry-run its automatically set to 1

    -I, --icons <icons>     [env: FRS_SHOW_ICONS=]  [default: true]

    <base-path>           [default: .]


$ frs -f '([a-z]+)_(\d+)(\..+)' '${2}_${1}${3}' test_folder
test_folder/bar_02.png -> test_folder/02_bar.png
test_folder/foo_01.txt -> test_folder/01_foo.txt



Please check, that you have a recent version of Rust installed.

$ cargo install frs


Operation Mode

The default operation is to do a dry-run. To change this behavior, you have to set the FRS_DEFAULT_OP environment variable to RUN.


Nerd Font Icons

frs is able to show Nerd Font icons. If you don't use NF in your terminal you can disable it with the --icons option or with the FRS_SHOW_ICONS environment variable. This can be done e.g. on ZSH by adding this line to your ~/.zshenv:

export FRS_SHOW_ICONS=false

CREV - Rust code reviews - Raise awareness

Please, spread this info !
Open source code needs a community effort to express trustworthiness.
Start with reading the reviews of the crates you use. Example: web.crev.dev/rust-reviews/crate/num-traits/
Than install the CLI cargo-crev. Read the Getting Started guide.
On your Rust project, verify the trustworthiness of all dependencies, including transient dependencies with cargo crev verify
Write a new review !
Describe the crates you trust. Or warn about the crate versions you think are dangerous.
Help other developers, inform them and share your opinion.
Use the helper on this webpage: web.crev.dev/rust-reviews/review_new


~278K SLoC