{"id":14065886,"url":"https://github.com/jan25/move-my-files","last_synced_at":"2026-01-12T11:54:51.202Z","repository":{"id":53522726,"uuid":"273592513","full_name":"jan25/move-my-files","owner":"jan25","description":"mmf is a CLI tool to organise files on your computer","archived":false,"fork":false,"pushed_at":"2021-03-26T06:48:44.000Z","size":19,"stargazers_count":3,"open_issues_count":3,"forks_count":0,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-09-30T09:35:54.246Z","etag":null,"topics":["cli","files","organize-files","python-3"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jan25.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-06-19T21:47:54.000Z","updated_at":"2021-12-27T10:27:48.000Z","dependencies_parsed_at":"2022-09-09T21:20:55.404Z","dependency_job_id":null,"html_url":"https://github.com/jan25/move-my-files","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jan25%2Fmove-my-files","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jan25%2Fmove-my-files/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jan25%2Fmove-my-files/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jan25%2Fmove-my-files/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jan25","download_url":"https://codeload.github.com/jan25/move-my-files/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":228052627,"owners_count":17862105,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","files","organize-files","python-3"],"created_at":"2024-08-13T07:04:48.155Z","updated_at":"2026-01-12T11:54:51.196Z","avatar_url":"https://github.com/jan25.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"# move-my-files\n\n`mmf` is a cli tool for organising files on your computer. Tell it the file name patterns, where to move and matching files from a source directory are moved to target directory. Run it as one-off command or in watch mode to continously observe a source directory.\n\n## Installation\n\nPrerequisites:\n\n- Python \u003e=3.5\n- `pip` package manager\n\nInstall `mmf` using:\n\n```sh\n# Install or upgrade mmf\npip install move-my-files -U\n```\n\n## Usage\n\nMove files using either one time command or watch mode:\n\n```sh\n# Supply source and destination directory explicitly\nmmf move --source ~/Documents --dest-dir ~/Documents/images --pattern .png\n\n# Uses predefined configuration(provided in using add command)\nmmf move --source ~/Documents\n\n# Watch ~/Documents directory for moving files\nmmf move --source ~/Documents --dest-dir ~/Documents/images --pattern .png --watch\nmmf move --source ~/Documents --watch\n```\n\nDefine your favorite configurations using `add` command. This command keeps track of your configurations so they are not required to be typed in future. Use `list` command to list configurations you've previosly added.\n\n```sh\n# Add configuration\nmmf add --dest-dir ~/Documents/images --pattern .png --name imagefiles\nmmf add --dest-dir ~/Documents/pyfiles --pattern .py --name pyfiles\n\n# List configurations (previously added)\nmmf list\n\n# move without --dest-dir will use configurations\nmmf move --source ~/Documents --watch\n```\n\nAvailable shortcuts for options:\n\n- `--source`: `-s`\n- `--dest-dir`: `-d`\n- `--pattern`: `-p`\n- `--watch`: `-w`\n- `--name`: `-n`\n\n## Development\n\nFork and clone this repository to develop on latest master branch. General steps to execute python code from this repo:\n\n```sh\n# Create development environment\ncd /move-my-files\npython3 -m venv .env \u0026\u0026 source .env/bin/activate\npip install -e '.[dev]'\n\n# Execute CLI (from code)\ncd ./app\npython3 .\npython3 . list\n# Or directly\nmmf --help\n```\n\nLocal testing with unit tests and CLI:\n\n```sh\n# Run available unit tests\npython3 -m pytest tests -v\n\n# Install CLI locally to test (basically testing setup.py)\npip install -e .\nmmf --help\n```\n\nYou can also use `tox` to test on different environments.\n\nFor Packaging and publishing see here:\n\n- https://packaging.python.org/guides/distributing-packages-using-setuptools\n\n## Contribute\n\nIf you have ideas to improve this tool, feel free to raise a new issue in the Issues section or open a PR :)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjan25%2Fmove-my-files","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjan25%2Fmove-my-files","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjan25%2Fmove-my-files/lists"}