Pythod is a lightweigh Python directory organizing CLI tool.
Project description
Pythod
Table of Contents
Installation
You can install Pythod either by cloning the repository with:
git clone https://github.com/not-so-cool-anymore/pythod.git
and then run pip install . inside the repository.
Or you can install download and install it via Pip with:
pip install pythod
Usage
Configuration file
In order to properly organize a directory, the tool uses a configuration file that contains information about content types, indicators of those content types and the target folder into which they will be moved. The format of the default configuration file is the following:
{
"contents": [
{
"content_class": "<content_class_x>",
"target_directory": "<target_directory_x>",
"content_indicators": ["<indicator>", "<indicator>", "<indicator>"]
},
{
"content_class": "<content_class_y>",
"target_directory": "<target_directory_y>",
"content_indicators": ["<indicator>", "<indicator>", "<indicator>"]
}
]
}
Where content_class indicates the type of object that would be moved and must be either file or directory.
target_directory is the name of the directory in which files with matching content indicators will be moved.
content_indicators is an array of strings which contains indicators about a specific set of files. For directories, it is part of their names, and for files - their file extensions.
There is a default configuration file in the directory of the tool. The file contains the following:
{
"contents": [
{
"content_class": "file",
"indicators": [
"mkv",
"mp4",
"flv",
"avi",
"mov",
"mpg",
"amv",
"wmv",
"mov"
],
"target_directory": "movies_and_videos"
},
{
"content_class": "file",
"indicators": [
"jpg",
"jpeg",
"tiff",
"bat",
"gif",
"bmp",
"png",
"exif",
"svg"
],
"target_directory": "images"
},
{
"content_class": "file",
"indicators": ["txt", "doc", "docx", "md"],
"target_directory": "text_and_documents"
},
{
"content_class": "file",
"indicators": ["pdf"],
"target_directory": "pdfs"
},
{
"content_class": "file",
"indicators": ["zip", "rar", "tar", "gz"],
"target_directory": "archives"
},
{
"content_class": "file",
"indicators": ["exe", "bin", "msi"],
"target_directory": "executables"
},
{
"content_class": "directory",
"indicators": ["movie", "xvid", "brip", "dvdrip", "x264", "release"],
"target_directory": "movies_and_videos"
},
{
"content_class": "file",
"indicators": [
"cpp",
"c",
"cs",
"py",
"go",
"java",
"lua",
"rpy",
"sh",
"bas",
"pl",
"r",
"swift",
"pas",
"asm"
],
"target_directory": "source_files"
}
]
}
CLI usage
To use the tool type:
pythod --dir <ABS/PATH/TO/DIRECTORY/TO/ORGANIZE> --config <PATH/TO/CUSTOM/CONFIG/FILE>
Where --dir is required parameter and --config is optional. If --config is not provided, the default configuration will be loaded.
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
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file pythod-0.0.4.tar.gz.
File metadata
- Download URL: pythod-0.0.4.tar.gz
- Upload date:
- Size: 4.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.6.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
63f45ea0f1cd4fbc0760d4a24fb7d3a8346999fdfec85e5186ac3e5cbdea96d3
|
|
| MD5 |
27ac7a4a95db853fa2a1b58d41419fa8
|
|
| BLAKE2b-256 |
417e430ebbcb7e2b0c63324c80e00ada7889ded6d041e2fcc8cc9246f484d45c
|
File details
Details for the file pythod-0.0.4-py3-none-any.whl.
File metadata
- Download URL: pythod-0.0.4-py3-none-any.whl
- Upload date:
- Size: 18.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.46.1 CPython/3.6.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
68a5fc5f9e336993dd4d948285c498e131b63c15896f76b0ff7c104b038bf0c1
|
|
| MD5 |
3a2ea1d1184a99c4fd32b92b27293f89
|
|
| BLAKE2b-256 |
dbccc511b2d4ca059b45c4c8f0235f5e9e5ea1112395dfb9cd9a92805c375a84
|