- 整理思维导图
- 判断家目录下,普通文件的个数和目录文件的个数
- 输入一个文件名,判断是否为shell脚本文件,如果是脚本文件,判断是否有可执行权限,如果有可执行权限,运行文件,如果没有可执行权限,给文件添加可执行权限。
- 终端输入两文件名,判断哪一个文件更新
- 终端输入用户,判断用户是否存在,如果不存在,添加用户
- 输入学生成绩,判断等级,A[100,90),B[90,80),C[80,70),D[70,60)
- 写一个shell脚本,获取当前用户名,用户id和工作路径
- 统计/etc目录下以P或p开头的文件个数
2.判断家目录下,普通文件的个数和目录文件的个数
#!/bin/bash echo "目录文件的个数为:$(ls -la ~/ | grep -cE ^d)" echo "普通文件的个数为:$(ls -la ~/ | grep -cE ^-)"
3.输入一个文件名,判断是否为shell脚本文件,如果是脚本文件,判断是否有可执行权限,如果有可执行权限,运行文件,如果没有可执行权限,给文件添加可执行权限。
#!/bin/bash read -p "请输入一个文件名:" name ret=(`expr index $name \.`) len=(`expr length $name`) str=(`expr substr $name $((ret+1)) $len`) if [ $str = 'sh' ] then echo "${name}是脚本文件" mkdir $name if [ -x $name ] then echo "有可执行权限" bash $name else echo "没有可执行权限" chmod u+x,g+x $name fi else echo "${name}不是脚本文件" fi
4.终端输入两文件名,判断哪一个文件更新
#!/bin/bash read -p "请输入文件名" name1 read name2 if [ $name1 -nt $name2 ] then echo "${name1}更新" else echo "${name2}更新" fi
5.终端输入用户,判断用户是否存在,如果不存在,添加用户
ubuntu@ubuntu:804$ cat 5.sh #!/bin/bash read -p "请输入用户:" user id $user &>/dev/null if [ $? -eq 0 ] then echo "用户${user}存在" else echo "用户${user}不存在" sudo adduser $user fi
6.输入学生成绩,判断等级,A[100,90),B[90,80),C[80,70),D[70,60)
#!/bin/bash read -p "请输入学生成绩:" score if [ $score -le 100 -a $score -gt 90 ] then echo "A" elif [ $score -le 90 -a $score -gt 80 ] then echo "B" elif [ $score -le 80 -a $score -gt 70 ] then echo "C" elif [ $score -le 70 -a $score -gt 60 ] then echo "D" elif [ $score -le 60 -a $score -ge 0 ] then echo "不合格" else echo "请输入正确的成绩" fi
7.写一个shell脚本,获取当前用户名,用户id和工作路径
#!/bin/bash user=$(whoami) echo $user id -u $user $PWD $user
8. 统计/etc目录下以P或p开头的文件个数
#!/bin/bash ls /etc | grep -cE '^P|^p'