我正在编写一个shell脚本,每90天更改一次操作系统用户的密码。我会将脚本放在cron.Need帮助中,将密码中的字符增加1.密码应在89天后更改为sifs4you2。
#!/bin/bash
for i in `more userlist.txt `
do
echo $i
echo "sifs4you1" | passwd --stdin "$i"
echo;
#mailx -s "New Password for OS Users" <email> < /home/scripts/passwdsript.sh
完成
答案 0 :(得分:0)
awk '{ match($0,/[[:digit:]]+$/);cnt=substr($0,RSTART,RLENGTH);print substr($0,1,RSTART-1)cnt+1}' <<< $i
使用包含要增加的密码的awk和$ i,我们首先在密码末尾匹配1位或更多位的密码,使用substr函数将结果读入变量cnt。然后我们打印出密码的其余部分以及cnt递增1以形成新密码。