https://github.com/morganzhang100/line-counter
A command line tool to analyze the amount of lines and files under current directory
https://github.com/morganzhang100/line-counter
developer-tools python utility
Last synced: 11 months ago
JSON representation
A command line tool to analyze the amount of lines and files under current directory
- Host: GitHub
- URL: https://github.com/morganzhang100/line-counter
- Owner: MorganZhang100
- License: mit
- Created: 2015-03-31T03:22:20.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2019-08-14T14:29:05.000Z (almost 7 years ago)
- Last Synced: 2025-08-15T22:52:53.940Z (11 months ago)
- Topics: developer-tools, python, utility
- Language: Python
- Size: 10.7 KB
- Stars: 87
- Watchers: 4
- Forks: 15
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# line-counter
A command line tool to analyze the amount of lines and files under current directory.
It supports 'line.select' rules which works like '.gitignore'.
## Installation
You can install, upgrade, uninstall line-counter.py with these commands:
```
$ pip install line-counter
$ pip install --upgrade line-counter
$ pip uninstall line-counter
```
## Usage
```
Usage: line [options] [args]
Analyze the amount of lines and files under current directory following the
rules in 'line.select' or analyze all files if 'line.select' doesn't exist
Options:
--version show program's version number and exit
-h, --help show this help message and exit
-d, --detail show more detail in the result
-s, --show show rules in 'line.select'
```
## Example usage and output
Analyze all files (when 'line.select' doesn't exist) or specific files (when 'line.select' exists) under current directory.
```
$ line
Search in /Users/Morgan/Documents/Example/
file count: 4
line count: 839
```
Analyze all files (when 'line.select' doesn't exist) or specific files (when 'line.select' exists) under current directory.
And show results in detail.
```
$ line -d
Search in /Users/Morgan/Documents/Example/
Dir A/file C.c 72
Dir A/file D.py 268
file A.py 467
file B.c 32
file count: 4
line count: 839
```
Show the rules in 'line.select'
```
$ line -s
Here are the rules in 'line.select' under /Users/Morgan/Documents/Example/:
#Select rules:
*.c
#Ignore rules:
!Dir A
!*.py
```
Check current version
```
$ line --version
line 0.7.4
```
## line.select
This file works like '.gitignore'.
* Each line is a rule
* Each line starts with a '#' means that's a comment
* Each line starts with a '!' means it's a ignore rule
* Otherwise it's a select rule
* The order of rules is irrelevant and ignore rules can always override select rules
* The rules can find all the pathnames matching a specified pattern according to the rules used by the Unix shell. No tilde expansion is done, but *, ?, and character ranges expressed with [ ] will be correctly matched.
## Roadmap
* Add order output function
* Add option to only count file amount or line amount
## Change Log
* **0.7.4** 03/25/2017
Fix distribution on PyPI.
* **0.7.3** 03/25/2017
Fix the long description format on PyPI.
* **0.7.2** 03/25/2017
Fix a bug that file cannot be matched when there is a '[' in the path.
## Author
I'm Morgan Zhang, a graduate computer science student in University of San Francisco.
#### Why I made it
I always want to know how many lines of code that I have done, but there isn't a easy way to get it.
So I decide to make a tool for this.
#### Contact Information
MorganZhang100@gmail.com
## License
The MIT license.