lstree
lstree is for ls what pstree is for ps, and some more …
The idea struck when I had just started using leiningen for creating a clojure project. I wanted a way to see what all files/folders/things are created when leiningen creates a project. So I wrote this tool. It helps you visually see the folder hierarchy, and allows you to do some basic filtering on the tree.
Free software: MIT license
Documentation: https://lstree.readthedocs.org.
Features
Show a folder (or many, if specified) in tree structure
Show/hide hidden files
Ignore empty directories
Show (filter for) only certain files
Ignore certain files/folders
Installation
Use pip to install lstree:
pip install lstree
Basic Usage
lstree when used without any arguments, shows the current tree for $PWD:
tochukasui:hello-world$ lstree
|- ./
|- doc/
|- intro.md
|- resources/
|- src/
|- hello_world/
|- core.clj
|- target/
|- base+system+user+dev/
|- classes/
|- META-INF/
|- maven/
|- hello-world/
|- hello-world/
|- pom.properties
|- stale/
|- leiningen.core.classpath.extract-native-dependencies
|- classes/
|- META-INF/
|- maven/
|- hello-world/
|- hello-world/
|- pom.properties
|- stale/
|- leiningen.core.classpath.extract-native-dependencies
|- hello-world-0.1.0-SNAPSHOT.jar
|- test/
|- hello_world/
|- core_test.clj
|- CHANGELOG.md
|- LICENSE
|- project.clj
|- README.md
Apparently this was a hello-world lein project after a lein build. Too much clutter. I don’t care of about anything inside the target folder anyway. Let’s cut it out:
tochukasui:hello-world$ lstree -i target
|- ./
|- doc/
|- intro.md
|- resources/
|- src/
|- hello_world/
|- core.clj
|- test/
|- hello_world/
|- core_test.clj
|- CHANGELOG.md
|- LICENSE
|- project.clj
|- README.md
Much better. We ‘-i gnored’ the target folder. How about just focusing on the clojure source files?:
tochukasui:hello-world$ lstree -i target -f '*.clj'
|- ./
|- doc/
|- resources/
|- src/
|- hello_world/
|- core.clj
|- test/
|- hello_world/
|- core_test.clj
|- project.clj
Nice. But what are those ‘doc’ and ‘resources’ folders doing there? They don’t have any clj files; why clutter the view?:
tochukasui:hello-world$ lstree -i target -f '*.clj' --ignore-empty
|- ./
|- src/
|- hello_world/
|- core.clj
|- test/
|- hello_world/
|- core_test.clj
|- project.clj
Aha!
There are a few more useful tools lstree offers. For more info, check out the usage section of the documentation: https://lstree.readthedocs.io/en/latest/usage.html
History
0.1.0 (2016-05-01)
First release on PyPI.
Release files for lstree 0.1.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| lstree-0.1.1.tar.gz | 17.6 kB | Details |
Release files / lstree-0.1.1.tar.gz
| Download URL | lstree-0.1.1.tar.gz |
|---|---|
| Size | 17.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
bec36372ac0c9713cb8b5c79981ea284adaad3fb4984b42c05aa6dc193119ec1
|
|
BLAKE2b-256 checksum How to use checksums |
a3dd00c5505aa21c06e50df0836101c91bba5fa32951862876feba6a90a375a5
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |