前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >shell生成随机字符的几种方法

shell生成随机字符的几种方法

作者头像
行 者
发布2018-03-26 15:26:09
12.4K0
发布2018-03-26 15:26:09
举报
文章被收录于专栏:运维技术迷运维技术迷

一般在写shell脚本的时候,会有需要生成一些随机字符,比如在写批量生成用户+随机密码的脚本的时候,就会用到随机生成的字符串来作为新建用户的密码。以下的几种方式可以随机生成字符串。当然,还要许多方法都能完成文章标题的目的,这里仅列举出来部分的。

1.使用shell的random变量

[root@virmach ~]# echo $RANDOM 
1908

2.使用openssl

[root@virmach ~]# openssl rand -base64 8 # 8是8位的意思
K0NYLr0u0Xo=

3.random+openssl混合

[root@virmach ~]# echo $RANDOM `openssl rand -base64 8`
20446 +A7KGgNfPLc=

4.mkpasswd方法

[root@virmach ~]# yum -y install expect 
[root@virmach ~]# mkpasswd -l 8
Ykv{b12R

5.uuid方法

[root@virmach ~]# cat /proc/sys/kernel/random/uuid  | md5sum |cut -c 1-9  # 1-9 取8位,最后的9是结束。
362b84efe

6.dev方法

[root@virmach ~]# head /dev/urandom |cksum |md5sum |cut -c 1-9
89da0c70b

7.date日期方法

[root@virmach ~]# date +%s%N | md5sum |cut -c 1-9
4738152c2

8.for循环方法

[root@virmach ~]# for i in `seq 20`;do date +%s%N | md5sum | cut -c 1-9;done | sort | uniq -c | sort -rn -k1
      1 fa39a560c
      1 ecd4ceffd
      1 d55c46cbc
      1 cb62000bd
      1 c59bd7c47
      1 c3184203f
      1 b425ea72d
      1 9a7862d2c
      1 89937f1f6
      1 77ada8ace
      1 64b21e854
      1 5d846676c
      1 5531089be
      1 539eeb6f1
      1 31b408a3d
      1 3121ec947
      1 2cf29525f
      1 0c4896052
      1 0a50fe20f
      1 085964e34
 
 
[root@virmach ~]# for i in `seq 20`;do echo $RANDOM | md5sum | cut -c 1-9 ;done | sort | uniq -c | sort -rn -k1 
      1 f5e451aa0
      1 dda67bca5
      1 d0e33a01c
      1 cadd4e4b2
      1 bd3c38da5
      1 bafa3dae3
      1 b558cb841
      1 a9a2bc409
      1 a8741275b
      1 9ed3345eb
      1 781e1b49e
      1 74e440e32
      1 5ab403a0f
      1 4df853e04
      1 4dbe8c068
      1 3044e58f9
      1 21daea994
      1 0eb55df9e
      1 0c9d59d9b
      1 022520557
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档