bcmr-0.1.0 is not a library.
🚀 BCMR (Better Copy Move Remove)
Making file operations simpler and more modern! BCMR is a command-line tool written in Rust that lets you elegantly copy, move, and remove files.

📥 Installation
Using Cargo (Recommended)
Building from Source
The compiled binary will be available at target/release/bcmr.
✨ Features
- 🎯 Real-time Progress Bar - No more guessing how long it'll take
- 🔄 Recursive Directory Operations - Handle entire folders with one command
- 🎨 Attribute Preservation - Keep timestamps, permissions, and more
- ⚡ Asynchronous I/O - Faster file operations
- 🛡️ Safe Confirmation System - Prevent accidental overwrites or deletions
- 🎭 File Exclusion - Flexibly ignore unwanted files
- 📊 Detailed Operation Info - Know exactly what's happening
📖 Detailed Usage Guide
Copy Command
Basic syntax:
Available options:
-r, --recursive: Copy directories recursively--preserve: Preserve file attributes (timestamps, permissions)-f, --force: Force overwrite existing files-y, --yes: Skip confirmation when using force--exclude=<pattern>: Exclude files matching pattern (comma-separated)
Examples:
# Copy a single file
# Recursively copy a directory
# Copy with attribute preservation
# Force overwrite without prompting
# Copy with exclusions
Move Command
Basic syntax:
Available options:
-r, --recursive: Move directories recursively--preserve: Preserve file attributes-f, --force: Force overwrite existing files-y, --yes: Skip overwrite confirmation--exclude=<pattern>: Exclude matching files
Examples:
# Move a single file
# Recursively move a directory
# Force move with attribute preservation
# Move with exclusions
Remove Command
Basic syntax:
Available options:
-r, --recursive: Recursively remove directories-f, --force: Force removal without confirmation-i, --interactive: Prompt before each removal-v, --verbose: Show detailed removal process-d: Remove empty directories--exclude=<pattern>: Exclude matching files
Examples:
# Remove a single file
# Recursively remove a directory
# Interactive removal of multiple files
# Remove empty directory
# Force recursive removal with verbose output
# Remove with exclusions
⚙️ Shell Configuration
For convenient usage of BCMR, you can set up these aliases in your shell:
# Add to ~/.bashrc or ~/.zshrc
🤝 Contributing
Issues and PRs are welcome! Whether it's bug reports or feature suggestions, we appreciate all contributions.
- Fork the project
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add some amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
🐛 Bug Reports
If you find a bug or have any suggestions, please submit them to the GitHub Issues page. When reporting, please include:
- BCMR version used
- Operating system details
- Steps to reproduce the issue
- Expected behavior
- Actual behavior
📝 License
GPL-3.0 © Zane Leong