5 个版本 (3 个重大更新)
0.5.0 | 2022年9月2日 |
---|---|
0.4.1 | 2022年6月26日 |
0.4.0 | 2022年6月26日 |
0.3.0 | 2022年6月24日 |
0.2.0 | 2020年1月19日 |
#122 in #不同
16KB
303 代码行
epochs-cli
epochs crate 的命令行界面
它从命令行获取字符串,并尝试使用epochs crate所知的各种方法将它们解释为日期。
使用以下命令安装
$ cargo install epochs-cli
这将安装一个名为 epochs
的二进制文件。
$ epochs --help
epochs-cli 0.4.1
Tim Heaney <[email protected]>
Check strings given on the command line against different epochs.
USAGE:
epochs [OPTIONS] [CANDIDATES]...
ARGS:
<CANDIDATES>... Strings to test for epochness
OPTIONS:
-d, --debug
Activate debug mode
-h, --help
Print help information
--max <MAX>
Don't report dates after this [default: 2100-12-31]
--min <MIN>
Don't report dates before this [default: 2000-01-01]
-o, --output-format <OUTPUT_FORMAT>
Desired format for output [default: text] [possible values: json, json-pretty, text]
-v, --verbose
Verbose mode (-v, -vv, -vvv, etc.)
-V, --version
Print version information
给它一个数字,它将尝试将其解释为日期。
$ epochs 1234567890
1234567890 Decimal
cocoa => 2040-02-14T23:31:30
google calendar => 2007-03-16T23:31:30
unix => 2009-02-13T23:31:30
使用 --max 和 --min 选项来更改输出量。
$ epochs 1234567890 --min=1900-01-01 --max=2020-12-31
1234567890 Decimal
apfs => 1970-01-01T00:00:01.234567890
google calendar => 2007-03-16T23:31:30
java => 1970-01-15T06:56:07.890
mozilla => 1970-01-01T00:20:34.567890
unix => 2009-02-13T23:31:30
1234567890 Hexadecimal
apfs => 1970-01-01T00:01:18.187493520
java => 1972-06-23T22:44:53.520
mozilla => 1970-01-01T21:43:07.493520
您可以一次给出多个要搜索的内容。
$ epochs 39857.980209 1234567890 33c41a44-6cea-11e7-907b-a6006ad3dba0
39857.980209 Float
icq => 2009-02-13T23:31:30.057
1234567890 Decimal
cocoa => 2040-02-14T23:31:30
google calendar => 2007-03-16T23:31:30
unix => 2009-02-13T23:31:30
33c41a44-6cea-11e7-907b-a6006ad3dba0 Uuid
uuid_v1 => 2017-07-20T01:24:40.472634
如果您更喜欢JSON格式,它可以使用 serde 来提供输出。
$ epochs 39857.980209 1234567890 33c41a44-6cea-11e7-907b-a6006ad3dba0 --output-format=json-pretty
[
{
"source": "39857.980209",
"viewed_as": "Float",
"epochs": {
"icq": "2009-02-13T23:31:30.057"
}
},
{
"source": "1234567890",
"viewed_as": "Decimal",
"epochs": {
"unix": "2009-02-13T23:31:30",
"cocoa": "2040-02-14T23:31:30",
"google calendar": "2007-03-16T23:31:30"
}
},
{
"source": "1234567890",
"viewed_as": "Hexadecimal",
"epochs": {}
},
{
"source": "33c41a44-6cea-11e7-907b-a6006ad3dba0",
"viewed_as": "Uuid",
"epochs": {
"uuid_v1": "2017-07-20T01:24:40.472634"
}
}
]
它还将检查 UUID版本6和7 时间戳。这些重用了 uuid_v1
和 java
时间戳,来自 epochs
crate。
$ epochs 1EC9414C-232A-6B00-B3C8-9E6BDECED846 017F22E2-79B0-7CC3-98C4-DC0C0C07398F
1EC9414C-232A-6B00-B3C8-9E6BDECED846 Uuid
uuid_v6 => 2022-02-22T19:22:22
017F22E2-79B0-7CC3-98C4-DC0C0C07398F Uuid
uuid_v7 => 2022-02-22T19:22:22
它还将检查 ULIDs。这些也有 java
时间戳,但一切都是 base32 编码的。
$ epochs 01FWHE4YDGFK1SHH6W1G60EECF
01FWHE4YDGFK1SHH6W1G60EECF Ulid
ulid => 2022-02-22T19:22:22
依赖项
~8.5MB
~155K SLoC