Simple data manipulation tool with a bang.
Project description
bombchu
Simple data manipulation tool with a bang, inspired by qu.
Install
pip3 install bombchu --user
- Ensure that where Python cli tools are installed on your system is in your PATH.
Usage
❯ # break on a delimiter
❯ echo "d,d,b,a,a,b,c,d,d,e" | bombchu -d ','
['d', 'd', 'b', 'a', 'a', 'b', 'c', 'd', 'd', 'e']
❯ # same thing, but sort unique
❯ echo "d,d,b,a,a,b,c,d,d,e" | bombchu -d ',' -s -u
['a', 'b', 'c', 'd', 'e']
❯ # now output it separated by semi-colons
❯ echo "d,d,b,a,a,b,c,d,d,e" | bombchu -d ',' -s -u -o '; '
a; b; c; d; e
❯ # i got some csv data that looks like this...
❯ head -n 2 foo.csv
start_time,ip,port
"2022-04-10 06:00:10",10.13.37.42,51111
❯ # let's extract all the unique ips and put them on new lines defanged
❯ cat foo.csv | bombchu -c ip -u -n --defang
10[.]44[.]44[.]22
10[.]13[.]37[.]42
10[.]22[.]22[.]11
❯ # i gotta put this data in to splunk now in term format
❯ cat foo.csv | bombchu -c ip -u --term
(TERM(10.22.22.11) OR TERM(10.13.37.42) OR TERM(10.44.44.22))
❯ # now i got some json data that looks like this...
❯ cat foo.json
{
"foo": {
"id": 1234
},
"foo2": {
"id": 1337
},
"foo3": {
"id": 1111
}
}
❯ # i need all these ids sorted
❯ cat foo.json | bombchu -j id -s
[1111, 1234, 1337]
❯ # gimme those ids on new lines with back ticks
❯ cat foo.json | bombchu -j id -s -n --add '`'
`1111`
`1234`
`1337`
❯ # now i got some log file that looks like this...
❯ head -n 2 foo.log
{"name": "joe", "id": 4242, "action": "bleh"}
{"name": "bob", "id": 1337, "action": "blah"}
❯ # let's see the users in these logs
❯ cat foo.log | bombchu -l name -o ', '
joe, bob, bob, bob, bob, john, john, bob, bob, susan, susan, bob
❯ # i need these sorted unique and ready to go into splunk
❯ cat foo.log | bombchu -l name -s -u --splunk
("bob", "joe", "john", "susan")
❯ # now throw that on my clipboard
❯ cat foo.log | bombchu -l name -s -u --splunk --copy
("bob", "joe", "john", "susan")
❯ # read in a python list
❯ echo "['62', '41', '27', '111', '55']" | bombchu -p --addl '=' -n
=62
=41
=27
=111
=55
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
bombchu-0.1.2.tar.gz
(3.4 kB
view details)
Built Distribution
bombchu-0.1.2-py3.9.egg
(5.4 kB
view details)
File details
Details for the file bombchu-0.1.2.tar.gz
.
File metadata
- Download URL: bombchu-0.1.2.tar.gz
- Upload date:
- Size: 3.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.6 tqdm/4.62.3 importlib-metadata/4.10.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 047a736cbfdce2b160c9e7397595d8387f623b6258f421273f3a54a2fbdd161c |
|
MD5 | e3bf68811bed6851c13e94abf30ac94a |
|
BLAKE2b-256 | 6fb6ef85869fd292802c7ecd4e30199c14af119e8d005301e82cbd6e8a754a79 |
File details
Details for the file bombchu-0.1.2-py3.9.egg
.
File metadata
- Download URL: bombchu-0.1.2-py3.9.egg
- Upload date:
- Size: 5.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/32.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.6 tqdm/4.62.3 importlib-metadata/4.10.1 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.12
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 71e593b3c5894fae71fce20ad6130638a39a493b7cb6ec9771f6ee0328ab7100 |
|
MD5 | b7316f1ff64a0539ca1abdc43436c5b4 |
|
BLAKE2b-256 | e525865a64383b2e66d168ffcbd852f2be92a32bd1d3003e009c3575420a3406 |