AI智能
改变未来

shell脚本练习之while

刚开始学shell?
那就肯定要学习while循环,
把下面几个练习做出来,你就学会while循环了!

  • 使用while循环,添加user1-user10,分别设置密码为pass1-pass10,不添加user5
#!/bin/bashi=0while [ $i -le 10 ];dolet i++if [ $i -eq 5 ];thencontinuefiuseradd user${i} 1> /dev/nullecho pass${i}|passwd --stdin user${i} > /dev/nulldone
  • 使用while循环,将上题中的9个用户删除,删除成功给出如下提示“user xxx delete successfully.”
#!/bin/bashi=1while [ $i -le 10 ];doif [ $i -eq 5 ];thenlet i++continuefiuserdel -r  user${i} 1> /dev/nullecho \"user${i}  delete successfully.\"let i++done
  • 使用while循环计算1+2+3+…+100
#!/bin/bashi=1sum=0while [ $i -le 100 ];dolet sum+=ilet i++doneecho $sum
  • 使用while循环打印出所有用户信息,格式如下:用户名:XXX,UID:XXX,GID:XXX
while read linedousername=`echo ${line} | awk -F: \'{print $1}\'`userID=`echo ${line} | awk -F: \'{print $3}\'`userGID=`echo ${line} | awk -F: \'{print $4}\'`echo \"Username: $username    UserID: $userID    UserGID: $userGID\"done < /etc/passwd
  • 使用while循环,打印出passwd文件所有的奇数行行号及内容。
#!/bin/bashi=1while read odd_linedo[ $(( ${i}%2 )) != 0 ] && echo \"${i} ${odd_line}\"let i++done < /etc/passwd

<以上就是while的两种用法,代码仅供参考>

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » shell脚本练习之while