1

我想将某些信息(例如构建的日期和时间以及 SVN 修订版)编码为可逆的字母数字字符串,以便我可以轻松识别构建(除了维护已知构建表)。

我不知道该怎么做。您能否指出对我有帮助的相关算法、命令等?

4

1 回答 1

1

如果您不需要太短,请使用Base64 编码

$ echo $(date +%s)-r3749 | base64
MTM1ODg4MzA3MS1yMzc0OQo=
$ echo MTM1ODg4MzA3MS1yMzc0OQo= | base64 --decode
1358883071-r3749

在这里,我使用了Epoch 时间,因为它的字符数少于完整日期。因为它是一个数字,而 SVN 版本也是一个数字,您也可以使用不同的基数对它们进行编码。使用这个 Base 62 encoding function,您可以将 (date, revision) 对可逆地编码1358883071-r37491tXJyT,Yt

但是 Base64 可能足够短,而且超级简单。

于 2013-01-22T19:32:42.413 回答