zoukankan      html  css  js  c++  java
  • shell的常用脚本一

    批量创建用户名脚本:

     1 #########################################################################
     2 #    File Name: create-user.sh
     3 #    Author: kingle
     4 #    Mail: kingle122@vip.qq.com 
     5 #    Created Time: Mon 06 Aug 2018 04:17:12 PM CST
     6 #########################################################################
     7 #!/bin/bash
     8 user="kingle"
     9 passfile="./passwd.txt"
    10 for i in `seq -w 10`
    11 do
    12     useradd $user$i
    13     "`echo "$RANDOM"|md5sum|cut -c5-15`" = pass
    14     echo "$pass"|passwd --stdin $user$num
    15     echo -e "user:$user$num	passwd:$pass" >>$passfile
    16 done
    17 echo --------------------------ok--------------------
    18 cat $passfile

    批量删除用户:

    #########################################################################
    #    File Name: deluser.sh
    #    Author: kingle
    #    Mail: kingle122@vip.qq.com 
    #    Created Time: Mon 06 Aug 2018 04:17:12 PM CST
    #########################################################################
    
    
    #!/bin/sh
    for user in kingle{01..10}
    do
        userdel -r $user
        echo "delete $user is ok"
    done

    扫描内网存活主机

     1 #########################################################################
     2 #    File Name: scan_ip.sh
     3 #    Author: kingle
     4 #    Mail: kingle122@vip.qq.com 
     5 #    Created Time: Mon 06 Aug 2018 04:17:12 PM CST
     6 #########################################################################
     7 #!/bin/bash
     8 Ip_file=./scan_ip.txt
     9 >$Ip_file
    10 for i in 10.0.0.{1..254}
    11 do
    12     ping -c 1 -W 1 $i &>/dev/null && 
    13     if [ $? -eq 0 ];then
    14     echo "chunzhu: $i" &>>$Ip_file
    15         
    16 fi    &
    17 done 
    18 echo "hahhahah:"
    View Code

    nmap扫描:

     1 #########################################################################
     2 #    File Name: namp.sh
     3 #    Author: kingle
     4 #    Mail: kingle122@vip.qq.com 
     5 #    Created Time: Mon 06 Aug 2018 04:17:12 PM CST
     6 #########################################################################
     7 #!/bin/bash
     8 CMD="nmap -sP"
     9 IP="10.0.0.0/24"
    10 CMD2="nmap -sS"
    11 $CMD $IP|awk '/Nmap scan report for/ {print $NF}'
    View Code

    测试网站通否:

     1 #########################################################################
     2 #    File Name: test——url.sh
     3 #    Author: kingle
     4 #    Mail: kingle122@vip.qq.com 
     5 #    Created Time: Mon 06 Aug 2018 04:17:12 PM CST
     6 #########################################################################
     7 #!/bin/bash
     8 . /etc/init.d/functions
     9 check_count=0
    10 url_list=(
    11 http://10.0.0.200
    12 http://10.0.0.201
    13 http://10.0.0.202
    14 http://www.baidu.com
    15 )
    16 function wait(){
    17     echo -n 'waitting 3 misth--------';
    18     for ((i=0;i<3;i++))
    19     do
    20     echo -n ".";sleep 1
    21     done
    22     echo
    23 }
    24 function check_url(){
    25     wait
    26     for ((i=0; i<`echo ${#url_liset[*]}`; i++))
    27     do
    28         wget -o /dev/null -T 3 --tries=2 --spider ${url_list[$i]} >/dev/null
    29     if [ $? -eq 0 ]
    30     then
    31     action "${url_list[$i]}" /bin/true
    32     else
    33     action "${url_list[$i]}" /bin/false
    34     fi
    35 done
    36     ((check_count++))
    37 
    38 }
    39 main(){
    40     while true
    41     do
    42         check_url
    43         echo "-------check count:${check_count}"
    44         sleep 10
    45     done
    46 }
    47 main

    IPddos:

     1 #########################################################################
     2 #    File Name: namp.sh
     3 #    Author: kingle
     4 #    Mail: kingle122@vip.qq.com 
     5 #    Created Time: Mon 06 Aug 2018 04:17:12 PM CST
     6 #########################################################################
     7 #!/bin/bash
     8 file=$1
     9 JudgeExt(){
    10     if expr "$1" : ".*.log" &>/dev/null
    11     then
    12     :
    13     else 
    14     echo $"usage:$0 *.log"
    15     exit 1
    16 fi
    17 }
    18 IpCount(){
    19 grep "ESTABLISHED" $1|awk -F "[ :]+" '{ ++S[$(NF-3)]}END {for(key in S)print S[key],key}'|sort -rn -k1|head -5 >/tmp/tmp.log
    20 }
    21 ipt (){
    22     local ip=$1
    23     if [ `iptables -L -n|grep "$ip"|wc -l` -lt 1 ]
    24     then 
    25     iptables -I INPUT -s $ip -j DROP 
    26     echo "$line is dropped" >>/tmp/droplist_$(date +%F).log
    27 fi
    28 }
    29 main(){
    30     JudgeExt $file
    31     while true
    32     do
    33         IpCount $file
    34         while read line
    35         do 
    36             ip=`echo $line |awk `{print $2}``
    37             count=`echo $line|awk '{print $1}'`
    38             if [ $count -gt 3 ]
    39             then 
    40             ipt $ip
    41             fi
    42         done</tmp/tmp.log
    43         sleep 10
    44     done
    45 }
    46 main
  • 相关阅读:
    Java基础知识 String StringBuffer StringBuilder三者的区别(面试题)
    周学习笔记(10)——大三下
    中国软件杯——基于计算机视觉的交通场景智能应用
    unable to find Qt5Core.dll on PATH(已解决,超简单)
    周学习笔记(09)——大三下
    《一线架构师实践指南》阅读笔记三
    周学习笔记(08)——大三下
    《一线架构师实践指南》阅读笔记二
    周学习笔记(07)——大三下
    《一线架构师实践指南》阅读笔记一
  • 原文地址:https://www.cnblogs.com/kingle-study/p/9431030.html
Copyright © 2011-2022 走看看