shell 练习-下载文件

创建一个函数,能接受两个参数:

  1. 第一个参数为URL,即可下载的文件;第二个参数为目录,即下载后保存的位置;
  2. 如果用户给的目录不存在,则提示用户是否创建;如果创建就继续执行,否则,函数返回一个51的错误值给调用脚本;
  3. 如果给的目录存在,则下载文件;下载命令执行结束后测试文件下载成功与否;如果成功,则>返回0给调用脚本,否则,返回52给调用脚本;

阅读全文 >>

shell 练习-监控机器存活状态

设计一个脚本,监控远程的一台机器(假设ip为123.23.11.21)的存活状态,当发现宕机时发一封邮件给你自己。
        提示:

  1. 你可以使用ping命令 ping -c10 www.baidu.com
  2. 发邮件的命令是 echo “邮件内容” |mail -s “主题” abc@139.com
  3. 脚本可以搞成死循环,每隔30s检测一次

阅读全文 >>

shell 练习-获取ip

提示用户输入网卡的名字,然后我们用脚本输出网卡的ip。 看似简单,但是需要考虑多个方面,比如我们输入的不符合网卡名字的规范,怎么应对。名字符合规范,但是根本就没有这个网卡有怎么应对。

阅读全文 >>

shell 练习-脚本传参

使用传参的方法写个脚本,实现加减乘除的功能。例如: sh a.sh 1 2,这样会分别计算加、减、乘、除的结果。

要求:

  1. 脚本需判断提供的两个数字必须为整数
  2. 当做减法或者除法时,需要判断哪个数字大
  3. 减法时需要用大的数字减小的数字
  4. 除法时需要用大的数字除以小的数字,并且结果需要保留两个小数点。

阅读全文 >>

shell 练习-带选项的用户脚本

要求如下:

  • 只支持三个选项 ‘–del’ ‘–add’ –help输入其他选项报错。
  • 使用‘–add’需要验证用户名是否存在,存在则反馈存在。且不添加。 不存在则创建该用户,切添加与该用户名相同的密码。并且反馈。
  • 使用‘–del’ 需要验证用户名是否存在,存在则删除用户及其家目录。不存在则反馈该用户不存在。
  • –help 选项反馈出使用方法
  • 支持以,分隔 一次删除多个或者添加多个用户。
  • 能用echo $? 检测脚本执行情况 成功删除或者添加为0,报错信息为其他数字。
  • 能以,分割。一次性添加或者 删除多个用户。 例如 adddel.sh –add user1,user2,user3…….
  • 不允许存在明显bug。

阅读全文 >>

shell 练习-监控mysql服务

假设,当前MySQL服务的root密码为123456,写脚本检测MySQL服务是否正常(比如,可以正常进入mysql执行show processlist),并检测一下当前的MySQL服务是主还是从,如果是从,请判断它的主从服务是否异常。如果是主,则不需要做什么。

阅读全文 >>