15 releases (breaking)
0.12.0 | Sep 19, 2023 |
---|---|
0.11.0 | Sep 12, 2021 |
0.10.1 | Aug 15, 2020 |
0.10.0 | Jul 12, 2020 |
0.4.0 | Dec 26, 2019 |
#1331 in Command line utilities
180KB
6K
SLoC
dtool
dtool
is a command-line tool collection to assist development
Table of Contents
Description
Now dtool
supports:
- Hex / UTF-8 string / binary / byte array conversion
- Timestamp / date conversion
- Number 10/2/8/16 base conversion
- Hex / base58 conversion
- Hex / base64 conversion
- URL encode / decode
- Number codec
- Hash (MD5, SHA-1, SHA-2, SHA-3, RIPEMD, CRC, Blake2b, SM3, Twox)
- UTF-8 string / unicode conversion
- HTML entity encode / decode
- Regex match
- Pbkdf2
- Case conversion (upper, lower, title, camel, pascal, snake, shouty snake, kebab, sarcasm)
- AES encrypt / decrypt
- ECDSA (Secp256k1, NIST P-256, NIST P-384, SM2)
- SM4 encrypt / decrypt
- EdDSA (Ed25519)
- sr25519 signature
Usage
dtool
does different works by different sub commands:
Sub command | Desc | Example |
---|---|---|
h2s | Convert hex to UTF-8 string v0.1.0 |
$ dtool h2s 0x61626364 abcd |
s2h | Convert UTF-8 string to hex v0.1.0 |
$ dtool s2h abcd 0x61626364 |
h2b | Convert hex to binary v0.1.0 |
$ dtool h2b 0x61626364 abcd |
b2h | Convert binary to hex v0.1.0 |
$ dtool b2h abcd 0x61626364 |
... |
- Besides the sub command
help
,dtool
provides a sub commandusage
to show examples:
$ dtool usage
Usage
----------------------------------------------------------
h2s Convert hex to UTF-8 string $ dtool h2s 0x61626364
v0.1.0 abcd
----------------------------------------------------------
...
- You can search usage with a keyword:
$ dtool usage -s md5
Usage
-------------------------------------------------------
hash Hex to hash $ dtool hash -a md5 0x616263
MD5 0x900150983cd24fb0d6963f7d28e17f72
v0.2.0
-------------------------------------------------------
Tips
pipe
convert a string to base64
$ echo -n abc | dtool s2h | dtool h2b64
YWJj
convert a encoded timestamp to date
$ echo -n 2c28e75d | dtool nd -tu32 | dtool ts2d
2019-12-04 11:29:48
convert a jpeg to base64
$ cat pic.jpg | dtool b2h | dtool h2b64
/9j/4AAQSkZJR...
calculate file md5
$ cat pic.jpg | dtool b2h | dtool hash -a md5
0x1884b72e23b0c93320bac6b050478ff4
Installation
Homebrew
$ brew install guoxbin/guoxbin/dtool
Recommend! Homebrew will install shell completion for bash, fish, and zsh along with dtool
Arch Linux
There is an AUR package for dtool that includes shell completion for bash, fish, and zsh.
git clone https://aur.archlinux.org/dtool.git
cd dtool
makepkg -si
Cargo
$ cargo install dtool
Dependencies
~33MB
~609K SLoC