第24题
下面给出了一个SHELL程序,试对其行后有#(n)形式的语句进行解释,并说明程序完成的功能。(8分)
#!/bin/bash #(1)
dir=$1 #(2)
if [ -d $dir ] #(3)
then
cd $dir #(4)
for file in *
do
if [-f $file ] #(5)
then
cat $file #(6)
echo “end of file $file”
fi
done
else
echo “bad directory name $dir”
fi
答:#(1)使用/bin/bash解释脚本
#(2)将位置变量1赋值给变量dir
#(3)如果dir所指为目录
#(4)将当前目录改为dir
#(5)如果循环变量file所指是普通文件
#(6)显示文件file的内容 6分
程序功能:若命令行参数是一个合法目录则显示该目录下所有普通文件的内容,否则显示错误的目录名信息。