实习四 shell及shell编程
一、 实习目的
1. 学习shell的功能及相关配置文件,及Bash常用命令 2. 学习shell脚本的编写格式 3. 学习编写简单的Bash脚本
二、 实习要求
1. 了解Bash相关配置文件:/etc/profile、$HOME/.bash_profile、
$HOME/.bashrc、$HOME/.bash_logout 2. 掌握Bash常用命令:history、alias、fg、bg、jobs、输入输出重定向 3. 了解shell脚本的格式
4. 掌握Bash中常见元字符的功能
5. 掌握Bash中变量的概念:用户变量和环境变量的区别、变量的复制与引
用及Bash的常用内置变量和环境变量 6. 掌握Bash内置命令:eval、echo、exec
7. 掌握Bash中的算术运算let、条件测试test和[ ]及各种测试和逻辑运算 8. 掌握Bash的控制结构:if、for、case 9. 了解Bash的函数、点命令
三、 实习内容
1. 练习课本中有关shell的命令
2. 修改Bash的配置文件,让所有用户登录后首先显示用户主目录中的所有
内容,并致欢迎词。
3. 将某用户最近使用过的20条命令行保存到一个文件中,并用vi编辑,
删除命令行前的序号。
4. 为某个用户添加命令5个别名(具体命令自定),并使其在每次登录后就可以直接使用。
5. 分析如下脚本功能(注释每条语句,并描述脚本功能):
username=$1
[ -z $username ]&&read -p “Please Input Username:” username w -h|grep -q “^$username” || { echo $username do not login;exit 1;} echo -n Input Message to Send: read msg
if echo $msg|write $username 2>/dev/null fi
6. 编写脚本统计指定目录中普通文件的个数、目录的个数、链接文件的个
数。 7. 编写一个脚本名称为backup.sh,将第二个位置参数及其以后各参数所指
定目录中的以.c和.sh结尾的,且文件大小不为0的文件复制到第一个位置参数所指定的目录中。 (注:要求检查位置参数的合法性)
then echo Send Message successfully!! else echo Send Message fail!!