moove 0.2.2

🚚 Manipulate file names and locations
Documentation

moove - 🚚 Manipulate file names and locations

Version Downloads License

moove is a command line tool for renaming and moving files and directories using a text editor.

🎨 Features | 🚀 Usage | 📥 Getting started | 💙 Contributing | 🌏 License

Features 🎨

  • Displays file and directory names like ls in a text editor, and renames or moves them exactly as you edit them.
  • Supports Linux, Mac, and Windows.
  • Supports wildcard patterns including Windows.
  • Aborts operation in case of collisions.
  • Default options can be specified as environment variable MOOVE_OPTIONS.

Caveats ⚠

  • Given paths have to be convertible to UTF-8.
  • Collisions are detected as much as possible, but not perfectly. Does not verify all paths such as hard links and symbolic links.

Usage 🚀

Usage: moove [OPTIONS] [PATHS]...

Arguments:
  [PATHS]...  Paths to move [default: .]

Options:
  -u, --dry-run                    Dry-run option
  -v, --verbose                    Verbose output
  -q, --quiet                      No output to stdout/strerr even if error
  -a, --absolute                   Handle as absolute paths
  -d, --directory                  Directories themselves, not their contents
  -w, --with-hidden                Include hidden files
  -e, --exclude-pattern <PATTERN>  Exclude regular expression pattern
  -c, --copy                       Copy without moving
  -h, --help                       Print help
  -V, --version                    Print version

Getting Started 📥

Pre-compiled binaries

Install by cargo

cargo install moove

Contributing 💙

Followings are used to build.

Setup building environment 🪜

  1. Install Zig according to the Zig document.
  2. Run following commands.
cargo install cargo-make
cargo make setup

Building 🔨

To build binaries for supported platforms,

cargo make

TODOs ✅

  • Prompt re-edit when conflict
  • Order option
  • Recursive option
  • Maximum depth option
  • Depth option
  • Package for various platforms
  • Enable applying pipe
  • Overwrite option
  • Remove operation
  • Create option
  • Exclude .gitignore option
  • Rollback option
  • Log and undo

License 🌏

Licensed under either of

at your option.

Unless you explicitly state otherwise, any contribution intentionally submitted for inclusion in the work by you, as defined in the Apache-2.0 license, shall be dual licensed as above, without any additional terms or conditions.

© 2023 Urin