shell-脚本集合3

发布时间:2019-09-16 07:15:41编辑:auto阅读(1452)

    shell-脚本集合

    shell-脚本集合2

     

    # 上海@Debian (xxxxx) 15:11:28  谁有批量修改用户密码脚本?

    1. #根据批量添加用户名改的。  
    2. #echo 'dongnan' | passwd --stdin dn 
    3. #Changing password for user dn. 
    4. #passwd: all authentication tokens updated successfully. 
    5.  
    6. ################## 
    7. #!/bin/bash  
    8. #add user for this host  
    9. #20120604 by dongnan  
    10.  
    11. #variables  
    12. ip=10.0.0.  
    13. hosts='201 202 203 204 205'  
    14. user='dongnan'  
    15. pw='dongnan'  
    16.    
    17. for host in $hosts;do  
    18.         echo "${ip}$host"  
    19.         ssh ${ip}$host "echo $pw | passwd --stdin $user"   
    20. done 

    #厦门@拖拉机(xxxx)  13:35:48

    请教怎么样得到 ,只有一个IP的字符串 ?

    1. /sbin/ifconfig eth0 | grep Bcast | sed -e 's/^.* addr:\(.*\) Bcast.*$/\1/' 

    我想实现  输入一个IP 跟机器上面的IP对照 是否存在 ?

    1. #!/bin/bash 
    2. #read  
    3.  
    4. #variables 
    5. ip=`/sbin/ifconfig eth0 | grep Bcast | sed -e 's/^.* addr:\(.*\) Bcast.*$/\1/'` 
    6.  
    7. #main 
    8. read var; 
    9.  
    10. if [ "$var" = "$ip" ];then  
    11.    echo "ok" 
    12. else 
    13.    echo "no" 
    14. fi 

    read 命令是一个内置命令,用于从终端或文件读取输入(参见表14-1)。read命令读取一个输入行,直至遇到换行符。行尾的换行符在读入时将被转换成一个空 字符。如果read命令后未跟变量名,读入的行将被赋给内置变量REPLY。也可以用read命令来中断程序的运行,直至用户输入一个回车键。要知道如何 有效地使用read命令从文件读取输入行,请参见14.6节的“循环控制命令”。如果带-r选项,read命令将忽略反斜杠/换行符对,而把反斜杠作为行 的一部分。read命令有4个控制选项:-a,-e,-p,-r②。

    表14-1 read命令
    格式                含义
    read answer       从标准输入读取一行并赋值给变量answer
    read first last   从标准输入读取一行,直至遇到第一个空白符或换行符。把用户键入的第一个词存到变量first中,把该行的剩余部分保存到变量last中
    read              标准输入读取一行并赋值给内置变量REPLY
    read –a arrayname 读入一组词,依次赋值给数组arrayname③
    read -e           在交互式shell命令行中启用编辑器。例如,如果编辑器是vi,则可以在输入行时使用vi命令③
    read –p prompt    打印提示符,等待输入,并将输入赋值给REPLY变量③
    read –r line      允许输入包含反斜杠③

    #update 20130216 vps web 程序备份

    1. cat sh/www_bak.sh  
    2. #!/bin/bash  
    3. #backup www data  
    4. #20111012 by dongnan  
    5.       
    6. #variables  
    7. bak_dir=/data/  
    8. www_dir=/var/www/html/ 
    9. www_name=wd 
    10. l_time=`date +'%Y-%m-%d %H:%M:%S'`  
    11. now_time=`date +'%Y-%m-%d'`  
    12. expires_time=`date +"%Y%m%d" --date='7 days ago'`  
    13. log=/root/sh/log/www_bak.err  
    14. date_dir=$(date +'%Y%m%d')  
    15. tar=/bin/tar 
    16.       
    17. #delete old file (7days)   
    18. find "$bak_dir" -name "${expires_time}" -type d | xargs rm -rf  
    19.       
    20. #date dir  
    21. test -e ${bak_dir}${date_dir} || mkdir -p ${bak_dir}${date_dir}  
    22.       
    23. #backup and gzip database.sql  
    24. $tar czfP ${bak_dir}${date_dir}/${now_time}-${www_name}.tar.gz -C $www_dir $www_name || echo "$l_time $database backup error!!" >> $log  

     

    #

     

关键字