shell脚本(3)

shell脚本应用(三)

一、使用for循环语句

1.for语句的结构

for 变量名 in 取值列表

do

命令序列

done

例1:根据姓名列表批量添加用户

根据人事部给出的用户姓名拼音列表,在Linux服务器中添加相应的用户账号,初始密码均设置为"123456"。

指定员工列表文件users,编写一个名为uaddfor的shell脚本,从users文件中读取各用户名称,重复执行添加用户、设置初始密码的相关操作。

如果要批量删除

用户和宿主目录都没了

例2:根据IP地址列表检查主机状态

根据包含公司各服务器IP地址的列表文件,检查其中各主机的ping连通性

二、使用while循环语句

1.while语句的结构

while 条件测试操作

do

命令序列

done

2.while语句应用实例

例1:批量添加规律编号的用户

若要删除

三、使用case分支语句

1.case语句的结构

case 变量值 in

模式1)

命令序列1

,,

模式2)

命令序列2

;;

……

*)

默认命令序列

esac

case行尾必须为单词"in",每一个模式必须以右括号)结束

双分号";;"表示命令序列的结束

模式字符串中,可以用方括号表示一个连续的范围,[0-9],还可以用|,表示或A|B

*)表示默认模式,其中的*相当于通配符

2.case语句应用实例

例1:检查用户输入的字符类型

提示用户从键盘输入一个字符,通过case语句判断该字符是否为字母、数字或者其他控制字符,并给出相应的提示信息

例2:编写系统服务脚本

编写一个名为myprog的系统服务脚本,通过位置变量$1指定的start、stop、restart、status控制参数,分别用来启动、停止、重启sleep进程,以及查看sleep进程的状态。sleep用来暂停指定秒数的时间

posted @   wang-a  阅读(90)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示