shell脚本练习题word资料19页Word文档格式.docx
- 文档编号:13717496
- 上传时间:2022-10-13
- 格式:DOCX
- 页数:21
- 大小:29.35KB
shell脚本练习题word资料19页Word文档格式.docx
《shell脚本练习题word资料19页Word文档格式.docx》由会员分享,可在线阅读,更多相关《shell脚本练习题word资料19页Word文档格式.docx(21页珍藏版)》请在冰豆网上搜索。
Hello,root,yourUIDis0.
3.统计一个有多少个用户
答案一:
#!
/bin/bash
file="
/etc/passwd"
LINES=`wc-l$file|cut-d"
-f1`
forIin`seq1$LINES`;
do
userid=`head-$I$file|tail-1|cut-d:
-f3`
username=`head-$I$file|tail-1|cut-d:
echo"
hello$username,yourUIDis$userid"
done
thereare$LINESusers"
答案二:
file=/etc/passwd
letnum=0
forIin`cat$file`;
username=`echo"
$I"
|cut-d:
userid=`echo"
Hello,$username,yourUIDis$userid"
num=$[$num+1]
thereare$numusers"
练习二:
1.切换工作目录至/var
2.依次向/var目录中的每个文件或子目录问好,形如:
(提示:
forFILEin/var/*;
或forFILEin`ls/var`;
)
Hello,log
3.统计/var目录下共有多个文件,并显示出来
答案:
cd/var
forIin`ls/var/*`;
hello$I"
thenumberoffilesis$num"
练习三:
1.设定变量file的值为/etc/passwd
2.使用循环读取文件/etc/passwd的第2,4,6,10,13,15行,并显示其内容
3.把这些行保存至/tmp/mypasswd文件中
forIin246101315;
exec3>
/tmp/mypasswd
line=`head-$I$file|tail-1`
$line"
>
&
3
-
与当今“教师”一称最接近的“老师”概念,最早也要追溯至宋元时期。
金代元好问《示侄孙伯安》诗云:
“伯安入小学,颖悟非凡貌,属句有夙性,说字惊老师。
”于是看,宋元时期小学教师被称为“老师”有案可稽。
清代称主考官也为“老师”,而一般学堂里的先生则称为“教师”或“教习”。
可见,“教师”一说是比较晚的事了。
如今体会,“教师”的含义比之“老师”一说,具有资历和学识程度上较低一些的差别。
辛亥革命后,教师与其他官员一样依法令任命,故又称“教师”为“教员”。
练习四:
宋以后,京师所设小学馆和武学堂中的教师称谓皆称之为“教谕”。
至元明清之县学一律循之不变。
明朝入选翰林院的进士之师称“教习”。
到清末,学堂兴起,各科教师仍沿用“教习”一称。
其实“教谕”在明清时还有学官一意,即主管县一级的教育生员。
而相应府和州掌管教育生员者则谓“教授”和“学正”。
“教授”“学正”和“教谕”的副手一律称“训导”。
于民间,特别是汉代以后,对于在“校”或“学”中传授经学者也称为“经师”。
在一些特定的讲学场合,比如书院、皇室,也称教师为“院长、西席、讲席”等。
传递两个整数给脚本,让脚本分别计算并显示这两个整数的和,差,积,商
答案如下:
vimtest.sh
#!
firstnumber$1"
(表示输出第一个数)
echo"
secondnumber$2"
(表示输出第二个数)
$(($1+$2))"
(输出两数之和)
$[$1-$2]"
(输出两数之差)
$[$1*$2]"
(输出两数之积)
$[$1/$2]"
(输出两数之商)
:
wq
(表示保存并退出vi编辑器)
chmod+xtest.sh
(给test.sh执行的权限)
./test.sh23
(传递两个参数并执行脚本
作业一:
写一个脚本:
1.创建目录/tmp/scripts
2.切换工作目录至此目录中
3.复制/etc/pam.d目录至当前目录,并重命名为test
4.将当前目录的test及其里面的文件和子目录的属主改为redhat
5.将test及其子目录中的文件的其它用户的权限改为没有任何权限
答案:
mkdir-v/tmp/scripts
cd/tmp/scripts
cp-r/etc/pam.d./test
chown-Rredhat./test
chmod-Ro=---./test
作业二:
1.显示当前系统日期和时间,而后创建目录/tmp/lstest
2.切换工作目录至/tmp/lstest
3.创建目录a1d,b56e,6test
4.创建空文件xy,x2y,732
5.列出当前目录下以a,x或者6开头的文件或目录
6.列出当前目录下以字母开头,后跟一个任意数字,而后跟任意长度字符的文件或目录
date
mkdir-pv/tmp/lstest
cd/tmp/lstest
mkdira1db56e6test
touchxyx2y732
ls[ax6]*
ls[[:
alpha:
]][[:
digit:
]]*
作业三:
添加10个用户user1到user10,但要求只有用户不存在的情况下才能添加
forIin`seq110`;
cut-d:
-f1/etc/passwd|grep"
user$I"
2>
>
/tmp/etc.err||useradduser$I
作业四:
通过ping命令测试192.168.0.151到192.168.0.254之间的所有主机是否在线
如果在线,就显示“ipisup”
如果不在线,就显示“ipisdown”
forIin`seq151254`;
ping-c1-w1192.168.0.$I&
/dev/null&
192.168.0.$Iisup"
||
192.168.0.$Iisdown"
例题:
shell1.sh显示日期和时间。
echo“currenttimeis`date`”//date要加反引号
shell2.sh显示文件名,并显示位置参数(执行时带一个参数)。
(①$0是一个特殊的变量,它的内容是当前这个shell程序的文件名;
②$1是一个位置参数,位置参数之间用空格分隔,shell取第一个位置参数替换程序文件中的$1,第二个替换$2,依次类推。
echo“theprogramnameis$0”//$0是一个特殊的变数
echo“thefirstparais$1”//$1是一个位置参数
echo“theprogramexit”//执行时带一个参数如./shell2.shabcd
shell3.sh判断并显示位置参数
#!
if[-d“$1”];
then
echo“$1isdirectory,existed”
else
echo“$1doesnotexist,nowcreateit”
mkdir$1
echo“$1iscreated”
fi//执行时带一个参数
shell4.sh问候用户
user=`whoami`
case$userin
teacher)
echo“hello
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- shell 脚本 练习题 word 资料 19