Linux shell:使用AWK产生随机数/随机字符串
来源:互联网 发布:石狮优浮网络会所 编辑:程序博客网 时间:2024/05/22 08:26
有时候做测试,需要一些随机数,awk中的rand()函数就可以产生随机数
rand()说明如下:
rand()函数返回[0,1)之间的浮点数
int( n * rand() ),返回[0,n)之间的整数,也就是0~n-1之间的随机数
int( n * rand() ) + 1,返回1-n之间的随机数
注意,这里的int()是一个函数,不是表示整形,所以一定要加上括号,它的作用是取数字的整数部分
示例1: 产生随机数
随机产生10个学生的成绩,取值范围0-100
qingsong@db2a:~$ awk '> BEGIN {> for (i = 1; i <= 10; i++)> print int( 101 * rand() )> }'577642739187086071
示例2:产生10个随机的字符串:
qingsong@db2a:~$ cat randword.awk BEGIN { WORDNUM = 10 for (i = 1; i <= WORDNUM; i++) { print randword(20) }}# randint(n): return a random integer number which is >= 1 and <= nfunction randint(n) { return int(n *rand()) + 1}# randlet(): return a random letter, which maybe upper, lower or number. function randlet() { return substr("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789", randint(62), 1)}# randword(LEN): return a rand word with a length of LENfunction randword(LEN) { randw="" for( j = 1; j <= LEN; j++) { randw=randw randlet() } return randw}qingsong@db2a:~$ awk -f randword.awk wxXe8fVGnC4ANvrQrYlpk9uwRkTNBpTQCrGNdsL4ANbgdugqUFigTkhptKZC1yGQGz1CW8Q6J1KJuzf1KRCwdjYhqoKfpiVFgqxCasuwcoE2MN18JxFpyUrb6MPydAXBFBDFJzBmq5JQ6taOEQOjnwaH9bN47h6AfMZywlOZcoSLOgqjvd9RCUAPqkaeU9nLtv1xuslcqingsong@db2a:~$
这里有必要介绍一下,里面用到了三个自定义函数:
randint(n)返回一个1-n之间的随机整数
randlet()返回a-zA-Z0-9当中随机的一个字符,62即前面那个字符串的长度
randword(LEN)则通过多次连接randlet()返回的随机字符,返回一个随机的字符串,长度为LEN
参考资料:《The AWK Programming Language》
阅读全文
0 0
- Linux shell:使用AWK产生随机数/随机字符串
- Shell产生随机数或随机字符串
- python 产生随机数,随机字符串
- python 产生随机数,随机字符串
- python产生随机数,随机字符串
- python 产生随机数,随机字符串
- AWK使用总结(3)AWK产生随机数
- 使用linux下时间做因子产生随机字符串
- Linux下生成随机数和随机字符串
- 使用boost库生成 随机数 随机字符串
- shell 产生随机数
- shell脚本产生随机数
- shell 生成指定范围随机数与随机字符串
- shell 生成指定范围随机数与随机字符串
- shell 生成指定范围随机数与随机字符串
- shell 生成指定范围随机数与随机字符串
- 产生随机数 双色球随机号码
- Flex 产生随机数、随机颜色
- Android自定义控件6----继承ViewGroup自定义侧滑菜单
- Springboot启动报错:Your ApplicationContext is unlikely to start due to a @ComponentScan of the default
- Linux——网络编程基础(二)
- 并发编程(8)-单例和多线程
- LeetCode基础-图
- Linux shell:使用AWK产生随机数/随机字符串
- 模糊查询
- Java实现excel的读与写(Apache POI)
- magento 开发 -- 入门深入理解第七章 – 自定义Magento系统配置
- this指针
- “tarjan陪伴强联通分量
- IIS配置之Web服务器被配置为不列出此目录的内容
- Docker技术这些应用场景,你知道吗?
- 欢迎使用CSDN-markdown编辑器