gee released! tool of stdin to each files and stdout with more
연휴 기간동안 gee라는 도구를 만들었습니다. tee랑 비슷한 도구이고 추가적인 기능들이 포함된 tee라고 생각하시면 됩니다. 오늘은 간단하게 gee에 대해 소개할까 합니다.
It is the current holiday season in South Korea. I had some time during that period, so I made and released simple tools focusing on the functions I needed. It’s gee.
What is gee?
Gee is tool of stdin to each files and stdout. It is similar to the tee command, but there are more functions for convenience. In addition, it was written as go
How to install?
From source
go get github.com/hahwul/gee
With homebrew
brew tap hahwul/gee
brew install gee
Snapcraft?
Contacted snapcraft team because there is a user who has already occupied the gee name. (but not published package…😭)
Usage
Usage: gee [flags] [file1] [file2] ...
(If you do not specify a file, only stdout is output)
Flags:
-append
Append mode for files
-chunked int
Chuked files from line (e.g output / output_1 / output_2)
-distribute
Distribution to files
-find string
Find string in line (colorize red)
-format string
Change output format (json, md-table, html-table) (default "line")
-prefix string
Prefix string
-regex string
Match with Regular Expression (like grep)
-regexv string
Unmatch with Regular Expression (like grep -v)
-replace string
Replace string in line with '-find' option
-rmnl
Remove newline(\r\n)
-split string
Split string within line. (to line , to table, to md-table)
-suffix string
Suffix string
-uncolor
Uncolorize stdout
-version
Version of gee
-with-line
With line number (colorize blue)
-with-time
With timestamp (colorize blue)
Make curl request with -prefix
and -suffix
cat urls | gee -prefix "curl -i -k " -suffix " -H 'Auth: abcd'" curls.sh
curl -i -k https://www.hahwul.com/?q=123 -H 'Auth: abcd'
curl -i -k http://testphp.vulnweb.com/listproducts.php?cat=asdf&ff=1 -H 'Auth: abcd'
curl -i -k https://xss-game.appspot.com/level1/frame -H 'Auth: abcd'
Find(-find
) and Replace(-replace
)
cat raw.txt | gee -find keep-alive
cat raw.txt | gee -find keep-alive -replace close
Specify the maximum length of the file and save it in multiple files. (with -chunked
)
wc -l http.txt
2278
cat http.txt | gee -chunked 500 output
Distribute each line sequentially to multiple files. (with -distribute
)
wc -l http.txt
2278
cat http.txt | gee -distribute alice.txt bob.txt charlie.txt