# DirStuff
## Summarization
Summarize a directory recursively by file size. This tool can be used to quickly search a drive for large files taking up too much space.
## Installation
Install the current PyPI release:
```bash
pip install dirstuff
```
## Usage
```bash
# Run the tree command to summarize a directory
$ dirstuff tree <root-dir>
# Specify the minimum file size (default is 10MB)
$ dirstuff tree <root-dir> --size 750MB
$ dirstuff tree <root-dir> --size 50KB
# Print full absolute paths to directories instead of directory names
$ dirstuff tree <root-dir> --absolute
```
```bash
# Run the list command to find all directories with a matching name
$ dirstuff list <root-dir> <dir-name>
# Specify the minimum file size (default is 10MB)
$ dirstuff list <root-dir> <dir-name> --size 750MB
$ dirstuff list <root-dir> <dir-name> --size 50KB
```
```bash
from dirstuff.os import Path
```
## Examples
### Tree
```bash
# Summarize the /home/user/my_documents directory
# showing only directories greater than 20MB in size
$ dirstuff tree /home/user/my_documents --size 20MB
```
```python
|-> 69.0 GB > my_documents
|-> 67.8 GB > movies
|-> 62.0 GB > from_the_internet
|-> 5.8 GB > home_movies
|-> 638.1 MB > photos
|-> 368.2 MB > rock_concert
|-> 251.6 MB > vacation_2019
|-> 18.4 MB > family_photos
|-> 521.6 MB > work
|-> 263.8 MB > boring_docs
|-> 257.7 MB > reports
|-> 22.5 MB > games
```
### List
```bash
# List all node_modules folders under the /home/user/my_code directory
$ dirstuff list ~/Documents/Code/Projects/Current node_modules
```
```python
|-> 419.6 MB > /user/my_code/portfolio/web/node_modules
|-> 320.3 MB > /user/my_code/fun_project/node_modules
|-> 298.1 MB > /user/my_code/simple_game/version_2/node_modules
```
Raw data
{
"_id": null,
"home_page": "https://github.com/gregorybchris/dirstuff",
"name": "dirstuff",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.9,<3.13",
"maintainer_email": "",
"keywords": "directory,file,summary",
"author": "Chris Gregory",
"author_email": "christopher.b.gregory@gmail.com",
"download_url": "https://files.pythonhosted.org/packages/85/ef/7350adc72813c6840cb67e921d102c077d120338a40a97669edafdfbcf2a/dirstuff-0.1.0.tar.gz",
"platform": null,
"description": "# DirStuff\n\n## Summarization\n\nSummarize a directory recursively by file size. This tool can be used to quickly search a drive for large files taking up too much space.\n\n## Installation\n\nInstall the current PyPI release:\n\n```bash\npip install dirstuff\n```\n\n## Usage\n\n```bash\n# Run the tree command to summarize a directory\n$ dirstuff tree <root-dir>\n\n# Specify the minimum file size (default is 10MB)\n$ dirstuff tree <root-dir> --size 750MB\n$ dirstuff tree <root-dir> --size 50KB\n\n# Print full absolute paths to directories instead of directory names\n$ dirstuff tree <root-dir> --absolute\n```\n\n```bash\n# Run the list command to find all directories with a matching name\n$ dirstuff list <root-dir> <dir-name>\n\n# Specify the minimum file size (default is 10MB)\n$ dirstuff list <root-dir> <dir-name> --size 750MB\n$ dirstuff list <root-dir> <dir-name> --size 50KB\n```\n\n```bash\nfrom dirstuff.os import Path\n```\n\n## Examples\n\n### Tree\n\n```bash\n# Summarize the /home/user/my_documents directory\n# showing only directories greater than 20MB in size\n$ dirstuff tree /home/user/my_documents --size 20MB\n```\n\n```python\n|-> 69.0 GB > my_documents\n |-> 67.8 GB > movies\n |-> 62.0 GB > from_the_internet\n |-> 5.8 GB > home_movies\n |-> 638.1 MB > photos\n |-> 368.2 MB > rock_concert\n |-> 251.6 MB > vacation_2019\n |-> 18.4 MB > family_photos\n |-> 521.6 MB > work\n |-> 263.8 MB > boring_docs\n |-> 257.7 MB > reports\n |-> 22.5 MB > games\n```\n\n### List\n\n```bash\n# List all node_modules folders under the /home/user/my_code directory\n$ dirstuff list ~/Documents/Code/Projects/Current node_modules\n```\n\n```python\n |-> 419.6 MB > /user/my_code/portfolio/web/node_modules\n |-> 320.3 MB > /user/my_code/fun_project/node_modules\n |-> 298.1 MB > /user/my_code/simple_game/version_2/node_modules\n```\n",
"bugtrack_url": null,
"license": "Apache Software License",
"summary": "Directory summary tool.",
"version": "0.1.0",
"project_urls": {
"Homepage": "https://github.com/gregorybchris/dirstuff",
"Repository": "https://github.com/gregorybchris/dirstuff"
},
"split_keywords": [
"directory",
"file",
"summary"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "202f6efd9ffb0c30536f9bb58c5ab500591f99a697daab826139a162f065cafe",
"md5": "72017c4dc19f04f8925877186084c18e",
"sha256": "0d6ca1ddcf09a4203109176291351da207d95bd950b11bde68fc40fb0bcc07f5"
},
"downloads": -1,
"filename": "dirstuff-0.1.0-py3-none-any.whl",
"has_sig": false,
"md5_digest": "72017c4dc19f04f8925877186084c18e",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9,<3.13",
"size": 10514,
"upload_time": "2023-11-22T18:21:56",
"upload_time_iso_8601": "2023-11-22T18:21:56.631155Z",
"url": "https://files.pythonhosted.org/packages/20/2f/6efd9ffb0c30536f9bb58c5ab500591f99a697daab826139a162f065cafe/dirstuff-0.1.0-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "85ef7350adc72813c6840cb67e921d102c077d120338a40a97669edafdfbcf2a",
"md5": "dd42e8b80820f1d68c088ae1f0993841",
"sha256": "49a43e76a71b8514085b5b07a0ba8e0a79d9e4fc0f76e76c3030e0f550feb407"
},
"downloads": -1,
"filename": "dirstuff-0.1.0.tar.gz",
"has_sig": false,
"md5_digest": "dd42e8b80820f1d68c088ae1f0993841",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9,<3.13",
"size": 9699,
"upload_time": "2023-11-22T18:21:58",
"upload_time_iso_8601": "2023-11-22T18:21:58.129854Z",
"url": "https://files.pythonhosted.org/packages/85/ef/7350adc72813c6840cb67e921d102c077d120338a40a97669edafdfbcf2a/dirstuff-0.1.0.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2023-11-22 18:21:58",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "gregorybchris",
"github_project": "dirstuff",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"lcname": "dirstuff"
}