Skip to main content

A simple directory configuration tool

Project description

dirconfig 📂

Configure what files should be in what folders using an easy-to-read YAML config file.

Features

  • File Organization: Automatically move files based on their extension from one directory to another.
  • Notification System (Future Feature): Get notified regarding specific events specified in the configuration file.
  • Automated Backups (Future Feature): Set up scheduled backups for important directories.

Installation

Install dirconfig using pip:

pip install dirconfig

Configuration

Create a config.yml file in your working directory with your automation tasks. Here's an example configuration that organizes .jpg and .pdf files into separate directories:

tasks:
  - name: Organize Downloads
    type: file-organization
    source: /path/to/your/source/directory
    rules:
      - extension: .jpg
        destination: /path/to/your/destination/for/images
      - extension: .pdf
        destination: /path/to/your/destination/for/documents

Usage

dirconfig is designed to run as a daemon, monitoring specified directories and automatically organizing files according to the configurations defined in your config.yml file.

Starting dirconfig

To initiate dirconfig and begin the monitoring process, use the following command:

dirconfig start

This command starts dirconfig, which then operates in the background. It will watch the source directories specified in your config.yml for any changes, organizing files according to your predefined rules.

To run dirconfig as a separate process, use the following command:

dirconfig start &

Stopping dirconfig

To stop the dirconfig daemon, execute:

dirconfig stop

This command stops the background process of dirconfig, halting the monitoring and file organization tasks.

Advanced Management

For long-term operation or deployment, integrating dirconfig with system services or process managers can offer more graceful management, including automatic restarts, logging, and simplified start/stop operations.

Extending dirconfig

dirconfig welcomes enhancements and customization. If you're interested in adding new features or improving the tool, consider contributing to the source code. Your input and contributions are highly appreciated.

License

dirconfig is licensed under the MIT License. See the LICENSE file for more details.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

dirconfig-0.2.1.tar.gz (5.0 kB view details)

Uploaded Source

Built Distribution

dirconfig-0.2.1-py3-none-any.whl (5.3 kB view details)

Uploaded Python 3

File details

Details for the file dirconfig-0.2.1.tar.gz.

File metadata

  • Download URL: dirconfig-0.2.1.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.9

File hashes

Hashes for dirconfig-0.2.1.tar.gz
Algorithm Hash digest
SHA256 e7a0310446ead51ac71215cea2231e006c74fcd1866adb7f7e5bc3b9e85e3bf0
MD5 010df9b4857b658883dd4f73de0f2c38
BLAKE2b-256 51c974f803c2beba187d8b4547606457474867ab4898e91bb81f5d7d689ca68b

See more details on using hashes here.

File details

Details for the file dirconfig-0.2.1-py3-none-any.whl.

File metadata

  • Download URL: dirconfig-0.2.1-py3-none-any.whl
  • Upload date:
  • Size: 5.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.11.9

File hashes

Hashes for dirconfig-0.2.1-py3-none-any.whl
Algorithm Hash digest
SHA256 9987e768b054ea44812b82b9d8d30b49a061e6b553002fbf4d1ee01f38b41ac2
MD5 0b0e3a5b05ecce561e4daf4c4e0572fa
BLAKE2b-256 bc40b998b1d7ac08268b77142ad138c3d6887fa2f0554988478bd1d6f30cec3c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page