zoukankan      html  css  js  c++  java
  • Shell编程------脚本范例

    1. 批量添加用户
        建立用户名和密码组合的txt文件userdata.txt,如下:
    username1 123
    username2 123
    username3 123
    username4 123
    username5 123
    username6 123
        批量添加以上用户的脚本是:
    #! /bin/bash
    while read line
    do
        username=$(echo $line | cut -f1 -d' ')   #或 username=$(echo $line | awk '{print $s1}')
        password=$(echo $line | cut -f2 -d' ')   #或 password=$(echo $line | awk '{print $s2}')
        useradd $username
        if [ $? -eq 0 ]; then
            echo $password | passwd --stdin $username
        else
            echo "the user $username has been finished!"
        fi
    done < userdata.txt
     
    2. 文件安全检测
        文件安全检测的机制是基于MD5算法:使用MD5算法计算文件的MD5值,若与原始文件的MD5值不同,则文件被修改过。
    #! /bin/bash
    mkdir /usr/UserData
    sudo chmod 777 /usr/UserData
    DIRS="/bin /usr/bin"              #  不是shell内建命令的命令最好用全路径调用!
    FIND="usr/bin/find                #  不是shell内建命令的命令最好用全路径调用!
    MD5SUM="usr/bin/md5sum"           #  不是shell内建命令的命令最好用全路径调用!
    # 计算文件夹中所有文件的MD5值
    $FIND $DIRS -type f | while read line           
    do
        MD5SUM $line >> /usr/UserData/md5value.md5   # >是覆盖重定向到文件    >>是追加重定向到文件
    done 
    # 检验md5value.md5中所有MD5值是否发生了改变(使用 -c)      --status参数使命令不产生文字输出
    while read line
    do   
         $MD5SUM -c --status $line
         if [ $? -eq 0 ]; then
            echo "$line is initial md5"
         else
            echo "$line has been changed"
         fi
    done < md5value.md5
  • 相关阅读:
    Javascript异步编程的4种方法
    同步编程和异步编程
    关于js 异步回调的一些方法
    array的方法 没记住的
    阮一峰关于reduce 和transduce的博客
    CSS开发小技巧
    提升自己的一个网址
    asm.js 和 Emscripten 入门教程
    Koa -- 基于 Node.js 平台的下一代 web 开发框架
    C#中使用handsonetable的一个例子
  • 原文地址:https://www.cnblogs.com/ladawn/p/8412580.html
Copyright © 2011-2022 走看看