如何根据 bash 命令设置 bash 环境变量

如何根据 bash 命令设置 bash 环境变量

我想通过命令生成随机字符串

 xxd -l 32 -c 32 -p < /dev/random
 dd1ad9f2deae0af5412e82fbbeb2df6b239e91d49d98638cc5b4bb94aac25463

如何设置环境变量?以下两种方法都不起作用

export TMP_RPC_PASS=$(echo xxd -l 32 -c 32 -p < /dev/random)
export TMP_RPC_PASS=$(xxd -l 32 -c 32 -p < /dev/random)

bash 在第二种变体之后简单冻结并等待某些事情,只有 ctrl-c 允许返回命令提示符。

答案1

第二个版本运行良好。它出现冻结的原因是/dev/random当系统的熵池耗尽时会阻塞,等待收集新的熵。

为了避免阻塞,请使用/dev/urandom而不是/dev/random。对于大多数用途来说,这同样好。

export TMP_RPC_PASS=$(xxd -l 32 -c 32 -p /dev/urandom)

相关内容