Metadata-Version: 2.1
Name: cleanup
Version: 1.0.0
Summary: A simple command line utility that organises files in a directory into subdirectories.
Home-page: https://github.com/faheel/cleanup
Author: Faheel Ahmad
Author-email: faheel@live.in
License: UNKNOWN
Project-URL: Bug Reports, https://github.com/faheel/cleanup/issues
Project-URL: Source, https://github.com/faheel/cleanup
Keywords: cleanup file-organiser file-organisation file-management colored docopt
Platform: UNKNOWN
Classifier: Development Status :: 5 - Production/Stable
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Description-Content-Type: text/markdown
Provides-Extra: dev
Requires-Dist: docopt
Requires-Dist: colored
Provides-Extra: dev
Requires-Dist: pylint; extra == 'dev'

# CleanUp

[![GitHub release](https://img.shields.io/github/release/faheel/cleanup.svg?style=for-the-badge)](https://github.com/faheel/cleanup/releases)

A simple command line utility that organises files in a directory into subdirectories based on the files' extensions.

## Development setup

1. Clone the repo and `cd` into it.

2. Set up a Python 3 virtual environment using [pipenv](https://docs.pipenv.org):
   ```bash
   pipenv --three   # create Python 3 virtual environment
   pipenv install   # install dependencies
   pipenv shell     # activate virtual environment shell
   ```

3. The cleanup script can now be run from the `cleanup` directory:
   ```bash
   ./cleanup/cleanup.py -h
   ```

## Usage

![Usage](images/usage.png)

When run without any option, it organises the files in the specified directory into subdirectories based on the files' extensions.

### Options

* #### `-d`, `--dry-run`

  Just displays the changes that would be made, without actually doing anything.

  ```bash
  cleanup -d path/to/dir        # dry run the cleanup
  cleanup -dr path/to/dir       # dry run the reverting a cleanup
  ```

* #### `-s`, `--silent`

  Prevents displaying any information while performing operations. Errors, however, are displayed irrespective of whether this option is enabled or not.

  ```bash
  cleanup -s path/to/dir        # silently cleanup
  cleanup -sr path/to/dir       # silently revert a cleanup
  ```

* #### `-r`, `--revert`

  Reverts the cleanup of a directory. Note that for this to work, the specified directory should have been cleaned up before.

  ```bash
  cleanup -r path/to/dir        # revert the cleanup of a directory
  ```

* #### `-h`, `--help`

  Displays the help text.

  ```bash
  cleanup -h
  ```

## License

This project is licensed under the terms of the [MIT license](LICENSE).


