用于生成随机十六进制数的Shell脚本

时间:2016-10-27 06:45:49

标签: shell

我在shell脚本中需要一些帮助。这是我用来编辑图像过滤器的代码,其中我使用十六进制颜色和白色。现在我需要制作随机的十六进制颜色,以便每次代码运行时代码都会生成一个新的图像。我能够通过特定的十六进制颜色代码来完成它。 这是代码:

STRING="Freddy script converts an image into a different style"
echo $STRING

arg=$1
filename=(${arg//./ })

echo $filename

./freddy/popart -r 1 -c 1 -g 0 -i bilinear -c1 "#FF0000 white" $1 output-beta/$filename-popart1.png

在上面的代码中,popart是图像过滤器脚本,output-beta是保存popart1.png的文件夹。我需要使用随机十六进制代码来代替"#FF0000"。请帮忙。

2 个答案:

答案 0 :(得分:7)

 echo "#$(openssl rand -hex 3)"

它具有安全随机的好处。

答案 1 :(得分:2)

您可以使用hexdump命令生成随机的三字节十六进制代码,如下所示:

hexdump -n 3 -v -e '"#" 3/1 "%02X" "\n"' /dev/urandom