免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 3848 | 回复: 12
打印 上一主题 下一主题

[求教]插入随机字符串 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2008-06-27 17:11 |只看该作者 |倒序浏览
现有代码如下

  1. dn: uid=arai,ou=Users,dc=yepn,dc=net

  2. dn: uid=asahara,ou=Users,dc=yepn,dc=net

  3. dn: uid=izumi,ou=Users,dc=dc=yepn,dc=net

  4. dn: uid=keizo,ou=Users,dc=yepn,dc=net

  5. dn: uid=kotori,ou=Users,dc=yepn,dc=net

复制代码


生成一串随机字符串放在password: 后面

随机字符串代码

  1. #!/bin/bash
  2. MATRIX="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz!@#$&*"
  3. LENGTH="10"
  4. while [ "${n:=1}" -le "$LENGTH" ]
  5. do
  6. PASS="$PASS${MATRIX:$(($RANDOM%${#MATRIX})):1}"
  7. let n+=1
  8. done
  9. echo "$PASS"

复制代码



想变成

  1. dn: uid=arai,ou=Users,dc=yepn,dc=net
  2. password: $PASS 这个地方想放$PASS的值
  3. dn: uid=asahara,ou=Users,dc=yepn,dc=net
  4. password:
  5. dn: uid=izumi,ou=Users,dc=dc=yepn,dc=net
  6. password:
  7. dn: uid=keizo,ou=Users,dc=yepn,dc=net
  8. password:
  9. dn: uid=kotori,ou=Users,dc=yepn,dc=net
  10. password:
复制代码


先谢过!!

论坛徽章:
0
2 [报告]
发表于 2008-06-27 17:49 |只看该作者
sed "/^dn/a${pass}" file

论坛徽章:
1
荣誉会员
日期:2011-11-23 16:44:17
3 [报告]
发表于 2008-06-27 17:54 |只看该作者
while read line;do ((++n));((n%2==0))&&echo passwd: $((RANDOM))||echo $line;done < urfile
如果产生随机数, 情参阅:
http://bbs.chinaunix.net/thread-551026-1-1.html

[ 本帖最后由 寂寞烈火 于 2008-6-27 17:55 编辑 ]

论坛徽章:
0
4 [报告]
发表于 2008-06-27 18:08 |只看该作者
谢谢楼上的两位朋友~~

to 烈火
$RANDOM
这个只能产生随机的数字~~
我想做密码用~~我在论坛找了段代码~可以实现随机字符串~~
也看过你以前的贴子~~产生随机符串~

论坛徽章:
0
5 [报告]
发表于 2008-06-27 18:24 |只看该作者
原帖由 merlin852 于 2008-6-27 17:49 发表
sed "/^dn/a${pass}" file


不好意思~是我没说清楚~
不是插件PASS~
是想把上面随机生成的那个字符串的变量PASS的值显示到后面~
好实在给每个用户不同的密码~

论坛徽章:
0
6 [报告]
发表于 2008-06-27 18:38 |只看该作者
关于随机数:echo -n $RANDOM|md5sum|head -c8
含有数字和abcde。

论坛徽章:
0
7 [报告]
发表于 2008-06-27 18:53 |只看该作者
原帖由 walkerxk 于 2008-6-27 18:38 发表
关于随机数:echo -n $RANDOM|md5sum|head -c8
含有数字和abcde。


谢谢~~
但是只有数字和abcde
有点太简单了~~~
还有别的办法吗~?
我想把上面那段生成随机字符串的代码放到循环中~~
但是总生成一个密码~~
还在试~~

论坛徽章:
0
8 [报告]
发表于 2008-06-27 19:09 |只看该作者
是不是伪随机的问题?因为电脑上的随机一般都是计算出来的,如果你种子没变,产生的随机数都是一样的,一般用时间作为种子,这样比较好。

论坛徽章:
0
9 [报告]
发表于 2008-06-27 19:22 |只看该作者
原帖由 walkerxk 于 2008-6-27 19:09 发表
是不是伪随机的问题?因为电脑上的随机一般都是计算出来的,如果你种子没变,产生的随机数都是一样的,一般用时间作为种子,这样比较好。


是的~谢谢指点~~
现在随机密码到是变了~不知道为什么位数总会不一样~晕~呵呵~~

论坛徽章:
7
荣誉版主
日期:2011-11-23 16:44:17子鼠
日期:2014-07-24 15:38:07狮子座
日期:2014-07-24 11:00:54巨蟹座
日期:2014-07-21 19:03:10双子座
日期:2014-05-22 12:00:09卯兔
日期:2014-05-08 19:43:17卯兔
日期:2014-08-22 13:39:09
10 [报告]
发表于 2008-06-27 19:33 |只看该作者
用base64编码一下,或用MD5等。
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP