shell脚本案例

  1. 编写脚本/root/bin/systeminfo.sh,显示当前主机系统信 息,包括主机名,IPv4地址,操作系统版本,内核版本, CPU型号,内存大小,硬盘大小。
  2. 编写脚本/root/bin/backup.sh,可实现每日将/etc/目录 备份到/root/etcYYYY-mm-dd中
  3. 编写脚本/root/bin/disk.sh,显示当前硬盘分区中空间利用率最大的值
  4. 编写脚本/root/bin/links.sh,显示正连接本主机的每个远 程主机的IPv4地址和连接数,并按连接数从大到小排序
  5. 写一个脚本/root/bin/sumid.sh,计算/etc/passwd 文件中的第10个用户和第20用户ID之和
  6. 写一个脚本/root/bin/sumspace.sh,传递两个文件 路径作为参数给脚本,计算这两个文件中所有空白行之和
  7. 写一个脚本/root/bin/sumfile.sh,统计/etc, /var, /usr目录中共有多少个一级子目录和文件
  8. 写一个脚本/root/bin/argsnum.sh,接受一个文件路径作 为参数;如果参数个数小于1,则提示用户“至少应该给一个 参数”,并立即退出;如果参则显数个数不小于1,示第一个 参数所指向的文件中的空白行数

     

  9. 写一个脚本/root/bin/hostping.sh,接受一个主机的IPv4地址做为参数,测试是否可连通。如果能ping通,则提示用户“该IP地址可访问”;如果不可ping通,则提示用户“该IP地址不可访问
  10. chmod -rw /tmp/file1,编写脚本/root/bin/per.sh,判 断当前用户对/tmp/fiile1文件 是否不可读且不可写 ?
  11. 编写脚本/root/bin/nologin.sh和login.sh,实现禁止和允许普通用户登录系统。
  12. 计算1+2+3+…+100的值 
  13. shell脚本,打印九九乘法表。
  14. 14、写一个脚本

           通过ping命令测试192.168.0.151到192.168.0.254之间的所有主机是否在线

           如果在线,就显示“ip is up”

           如果不在线,就显示“ip is down”

  15. 设计一个Shell程序,在/userdata目录下建立50个目录,即user1~user50,并设置每个目录的权限,其中其他用户的权限为:读;文件所有者的权限为:读、写、执行;文件所有者所在组的权限为:读、执行。

     

  16. 添加10个用户user1-user10,密码为8位随机字符
  17. /etc/rc.d/rc3.d目录下分别有多个以K开头和以S开头的文件;分别读取每个文件, 以K开头的输出为文件加stop,以S开头的输出为文件名加start,如K34filename stop S66filename start
  18. 在/testdir目录下创建10个html文件,文件名格式为数字N(从1到10)加随机8个字母,如:1AbCdeFgH.html
  19. 编写脚本,利用变量RANDOM生成10个随机数字,输出这个10数字,并显示其中的最大值和最小值
  20. 每隔3秒钟到系统上获取已经登录的用户的信息;如果发现用户hacker登录,则将登录时间和主机记录于日志/var/log/login.log中,并退出脚本
  21. 用文件名做为参数,统计所有参数文件的总行数.
  22. 用二个以上的数字为参数,显示其中的最大值和最小值
  23. 删除给定目录下大小为0的文件
  24. 写一个脚本,把给定目录下的所有普通文件更改名字为1,2,3.....
  25. 编写个shell 脚本将/usr/local/test 目录下大于100K 的文件转移到/tmp 目录下
  26. 写一个配置文件保存被监控主机SSH连接信息,文件内容格式:主机名 IP User Port
  27. 屏蔽每分钟SSH暴力破解超过10次的IP

    方法1:通过lastb获取登录状态:

  28. 方法2:通过日志获取登录状态

  29. 借助vmstat工具来分析CPU统计信息
  30. 监控内存利用率
  31. 控内存利用率
  32. 监控主机分区使用率大于80%,就发告警邮件。放到crontab里面,每10分钟执行一次。
  33. 监控主机磁盘空间大小

  34. 模拟linnux登录shell

猜你喜欢

转载自blog.csdn.net/weixin_43182388/article/details/84759590