传入一个网段地址,自动找出本网段内存活的IP地址。2,将存活的IP地址当作密码来创建Linux用户,用户名格式为:你的名字_数字 3,有几个存活IP地址,就自动创建几个用户   4,最后将创建的用户名和密码写入到/tmp目录下的某文件里

(1)找存活的ip

(2)将ip去除“.”,生成密码,

(3)创建用户,密码

(4)写入Path路径下的文件里(设置两个变量)

#!/bin/bash

Path=/tmp

for ip in 192.168.214.{1..5}

do

ping -c 1 $ip >/dev/null

if [ $? -eq 0 ];then

echo "$ip"

let i++

user=daisy_$i

useradd $user >/dev/null

(1)  Passwd=`echo $ip | sed -r 's#[^0-9]##g'`

[ -d $Path ] || mkdir $Path

(2) echo $Pas swd | passwd -- stdin $user

echo "$user:$Passwd">>$Path/user_passwd

fi

done

用户登录验证程序

1、脚本里设置两个用户名和密码

2、让用户从屏幕输入账户和密码进行登录

3,、如果账户输入错误,让该用户继续输入账户,也可以注册用户

4、账户正确,输入密码

5、密码正确,登陆成功

6、同一个账号,密码最多允许输错3次,达3次,账号锁定(此时脚本不能退出)。

7、锁定账号以后,可以继续登录未锁定账号,也可以删除用户

#!/bin/bash

function login(){
USER1="daisy"
PASSWD1="123123"
USER2="helen"
PASSWD2="123456"
lock=""

Path=/tmp
useradd daisy
useradd helen
echo $PASSWD1 | passwd --stdin daisy
echo $PASSWD2 | passwd --stdin helen
while :
do
read -p "please write your username:" user
clear
echo "$lock" | grep -w "$user" &>/dev/null
if [ $? -eq 0 ];then
echo "locked"
continue
fi
if [ $user != "daisy" -a $user != "helen" ];then
echo "invaild username "
read -p "create username or not (choice yes or no):" create
  case $create in
  yes)
  useradd $user
  echo "create successfully"
  passwd $user
  [ $? -eq 0 ] && echo "create successfully"
  echo "$user:$passwd" >> $Path/user_passwd
  echo "transfer successfully"
  exit
  ;;
  no)
  continue
  ;;
  *)
  echo "invaild number"
  ;;
  esac

else
i=0
while :
do
read -p "please write your password:" passwd
clear
  if [ $passwd == $PASSWD1 -a $user == "daisy" ];then
    echo "login successfully"
    exit
  elif [ $passwd == $PASSWD2 -a $user == "helen" ];then
    echo "login successfully"
    exit
  else  
    let i++
    if [ $i -eq 3 ];then
    echo "username has locked, please use another unlocked username"
    sleep 1
    clear
    lock=$lock" $user"
    sleep 1
    read -p "delete username or not(choice yes or no):" delete
      case $delete in
      yes)
        userdel $user
        echo "delete successfully"
        exit
        ;;
      no)
        exit  
        ;;
      *)
        echo "invaild number"
        ;;
      esac
    break
    fi
  echo "password is wrong"
  sleep 1
  clear
  fi
done
fi
done
}

function test(){

echo "123"
}
function title (){
cat <<FOF
********************
1、登录
2、退出
********************

FOF

}
while :
do
clear
title
read -p "请输入你的选择:" num
clear
  case $num in
  1)
    login
    ;;

  2)
    echo "exit"
    exit
    ;;
  *)
    echo "invaild number"
    ;;
  esac
sleep 2
done

Linux系统——shell脚本应用示例的更多相关文章

  1. Linux系统Shell脚本编程

    1. shell脚本概念:C语言编写的.命令解释器.编程语言. 是用户使用linux的桥梁. shell脚本语言非常擅长处理文本类型的数据. 2. shell脚本作用:自动化管理.监控管理.日志数据处 ...

  2. Linux系统——shell脚本

    shell脚本编程 作用:通过命令行解析的方式,自动执行设定好的程序或命令代码.(若将脚本挂到定时任务中,就会自动在非工作时间里自动触发执行程序) Shell脚本文件以“.sh”结尾 规范的Shell ...

  3. linux服务器批量部署应用系统shell脚本(Tomcat/jetty)

    linux服务器批量部署应用系统shell脚本: 1.请更换代码内的服务器地址(Tomcat或jetty服务器) serverRoot=/home/undoner/java_tool/apache-t ...

  4. Linux/Unix shell 脚本中调用SQL,RMAN脚本

    Linux/Unix shell脚本中调用或执行SQL,RMAN 等为自动化作业以及多次反复执行提供了极大的便利,因此通过Linux/Unix shell来完成Oracle的相关工作,也是DBA必不可 ...

  5. 从windows到linux的shell脚本编码和格式问题

    从windows到linux的shell脚本编码和格式问题   从windows到Linux的shell脚本编码和格式问题 1.异常问题 :set ff=unix 启动脚本在启动时报错比如执行sh s ...

  6. Linux简单Shell脚本监控MySQL、Apache Web和磁盘空间

    Linux简单Shell脚本监控MySQL.Apache Web和磁盘空间 1. 目的或任务 当MySQL数据库.Apache Web服务器停止运行时,重新启动运行,并发送邮件通知: 当服务器磁盘的空 ...

  7. Linux:从windows到linux的shell脚本编码和格式

    从windows到linux的shell脚本编码和格式问题 异常问题 :set ff=unix 启动脚本在启动时报错比如执行sh start.sh,时会报Command not found等等的错误, ...

  8. 详解Linux交互式shell脚本中创建对话框实例教程_linux服务器

    本教程我们通过实现来讲讲Linux交互式shell脚本中创建各种各样对话框,对话框在Linux中可以友好的提示操作者,感兴趣的朋友可以参考学习一下. 当你在终端环境下安装新的软件时,你可以经常看到信息 ...

  9. 使用C#给Linux写Shell脚本(下篇)

    在上篇的<使用C#给Linux写Shell脚本>结尾中,我们留下了一个关于C#如何调用BashShell的问题.在文章发布之后,我留意到有读者留言推荐使用“Pash”(一款类PowerSh ...

随机推荐

  1. centos配置ssh免密码登录后,仍提示输入密码

    配置SSH无密码登录需要3步: 1.生成公钥和私钥 2.导入公钥到认证文件,更改权限 3.测试 1.生成公钥和私钥 ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa 默 ...

  2. css 动画

    CSS3动画相关的几个属性是:transition, transform, animation:我分别理解为过渡,变换,动画.虽意义相近,但具体角色不一.就像是SHE组合,虽然都是三个女生,都唱同一首 ...

  3. poj 1696:Space Ant(计算几何,凸包变种,极角排序)

    Space Ant Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 2876   Accepted: 1839 Descrip ...

  4. Spark源代码阅读笔记之MetadataCleaner

    MetadataCleaner执行定时任务周期性的清理元数据(metadata),有6种类型的元数据:MAP_OUTPUT_TRACKER.executor跟踪各个map任务输出的存储位置的数据,依据 ...

  5. 复习及总结--.Net线程篇(2)

    复习总结 上一篇里讲到了使用委托异步调用的方式来使用多线程,这里介绍几个概念 这里贴出来一个关于应用程序域的帖子 http://www.cnblogs.com/firstyi/archive/2008 ...

  6. iOS开发之--svn工具Cornerstone上传忽略.a文件的处理方法

    工程文件上传到svn中,.a文件会自动屏蔽(应该叫屏蔽,反正就是上传不上去) 用Cornerstone工具,解决这个问题 1.打开Cornerstone左上角,点Cornerstone->Pre ...

  7. Python学习笔记5-元组Tuple

    tuple和list非常类似,但是tuple一旦初始化就不能修改,它也没有append(),insert()这样的方法.其他获取元素的方法和list是一样的 元组是用圆括号括起来的,其中的元素之间用逗 ...

  8. pushViewController自定义动画http://blog.csdn.net/ralbatr/article/details/22039233

     本文转载至  http://blog.csdn.net/ralbatr/article/details/22039233 实现的主要代码如下: CATransition *transition =  ...

  9. 第4章 Vim编辑器与Shell命令脚本

    章节简述: 本章节将教给您如何使用Vim编辑器来编写文档.配置主机名称.网卡参数以及yum仓库 ,熟练使用各个模式和命令快捷键. 我们可以通过Vim编辑器将Linux命令放入合适的逻辑测试语句(if. ...

  10. Hadoop入门必须知道的简单知识

    Hadoop入门知识 Hadoop构成 Hadoop由4个主要构成部分: 1) 基础核心:提供基础的通用的功能 2) HDFS:分布式存储 3) MapReduce:分布式计算 4) YARN:资源分 ...