Code Monkey home page Code Monkey logo

directory-tree's Introduction

Directory Tree Package

Setup Automated Test passing Python Version PyPI version Last Commit Open Source Love png2

About

Want to Display your Project/Current Working Directory as a Neat Tree? No Worries!

Directory Tree is a simple python utility package that displays out the Tree Structure of a User Defined Directory.

Currently Available for All Platforms.

Installation

Run the Following Command on your Terminal to Install directory_tree:

1 . Installing the Package using pip:

pip install directory_tree

OR

pip3 install directory_tree

2 . Cloning the Repository:

git clone https://github.com/rahulbordoloi/Directory-Tree/
cd Directory-Tree
pip install -e .

Usage

Function Signature

display_tree(dir_path: str = '', string_rep: bool=False, header: bool=False, max_depth: float=float("inf"), show_hidden: bool=False, ignore_list: list=None)

Arguments Description

Parameters Description
dir_path Root Path of Operation. By Default, Refers to the Current Working Directory.
string_rep Boolean Flag for Direct Console Output or a String Return of the Same. By Default, It Gives out Console Output.
header Boolean Flag for Displaying [OS & Directory Path] Info in the Console. Not Applicable if string_rep=True.
max_depth Max Depth of the Directory Tree. By Default, It goes upto the Deepest Directory/File.
show_hidden Boolean Flag for Returning/Displaying Hidden Files/Directories if Value Set to True.
ignore_list List of File and Directory Names or Patterns to Ignore.

Run this Script in Order to Print out the Tree Structure of a User-Defined Directory DirectoryPath!

# Importing Libraries
from directory_tree import display_tree

# Main Method
if __name__ == '__main__':
    display_tree(DirectoryPath)
  • Here by default, the DirectoryPath is the current working directory (CWD) unless specified by the user.

Output Examples

Sample Directory Tree -

SampleDirectoryTree.png

NOTE - Here, letseee.txt (File) and Directory 4/ (Directory) are HIDDEN in Nature.

  1. For Current Working Directory with Argument [Header Info = False]
from directory_tree import display_tree
display_tree(header=True)

CWDwithHeader.png

  1. For User Specified Directory with Arguments [String Representation = True, Show Hidden Entities = True]
from directory_tree import display_tree
customPath = 'D:\Work\Python Packages Maintainence\Directory-Tree\Test\Main Directory'
stringRepresentation = display_tree(customPath, string_rep=True, show_hidden=True)
print(stringRepresentation)

UserSpecifiedDirectoryStrRepShowHidden.png

  1. For Current Working Directory with Argument [Max Depth = 2]
from directory_tree import display_tree
display_tree(max_depth=2)

UserSpecifiedDirectoryMaxDep.png

Developing Directory Tree

To install directory_tree, along with the tools you need to develop and run tests, and execute the following in your virtualenv:

$ pip install -e .[dev]

Security & Probable Bugs

  • Directory Tree uses recursion. It will raise a RecursionError on really deep directory trees.
  • As the tree is lazily evaluated, it should behave well on really wide directory trees. Immediate children of a given directory are not lazily evaluated, though. It would be prompted to the last.
  • If you're a Windows user, it is always advised to use \\ instead of \ in the address as using \ might catchup escape sequences and corrupt the address string.

Contact Author

Name : Rahul Bordoloi
Website : https://rahulbordoloi.me
Email : [email protected]

Made with โ™ฅ in Python!

directory-tree's People

Contributors

rahulbordoloi avatar jeyenkc avatar pat-laub avatar imgbotapp avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.