1. 整理思维导图
3. 输入一个文件名,判断是否为shell脚本文件,如果是脚本文件,判断是否有可执行权限,如果有可执行权限,运行文件,如果没有可执行权限,给文件添加可执行权限。
#!/bin/bash
read -p "请输入一个文件名:" filename
pos=`expr index $filename "."`
len=`expr length $filename`
suffix=`expr substr $filename $[pos+1] $len`
if [ $suffix = "sh" ]
then
if [ -x "$filename" ]
then
bash $filename
else
chmod a+x $filename
fi
fi
4. 终端输入两文件名,判断哪一个文件更新
#!/bin/bash
read file1 file2
if [ -e $file1 -a -e $file2 ]
then
if [ $file1 -nt $file2 ]
then
echo "$file1 文件更新"
else
echo "$file2 文件更新"
fi
fi
5. 终端输入用户,判断用户是否存在,如果不存在,添加用户
#!/bin/bash
read user
if [ -z $(grep -nw $user /etc/passwd) ]
then
echo "该用户不存在"
sudo adduser $user
else
echo "该用户已存在"
fi
6. 输入学生成绩,判断等级,A[100,90),B[90,80),C[80,70),D[70,60)
#!/bin/bash
read -p "请输入学生的成绩:" score
if [ $score -gt 90 ] && [ $score -le 100 ]
then
echo "A"
elif [ $score -gt 80 ]
then
echo "B"
elif [ $score -gt 70 ]
then
echo "C"
elif [ $score -gt 60 ]
then
echo "D"
fi
7. 写一个shell脚本,获取当前用户名,用户id和工作路径
#!/bin/bash
echo "当前用户名:$(whoami)"
echo "当前用户id:$(id -u)"
echo "当前工作路径:$(pwd)"
8. 统计/etc目录下以P或p开头的文件个数
#!/bin/bash
num=(`sudo find /etc -iname "p*"`)
#num=(`locate -i /etc/p`)
echo ${#num[*]}