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

 

posted @ 2018-02-04 10:10  IvanB.G.Liu  阅读(415)  评论(0编辑  收藏  举报