Linux作业
- 格式:doc
- 大小:25.00 KB
- 文档页数:6
第一学期
计算机科学与技术专业 级
《Linux操作系统》课程
大型作业
班级:
学号:
姓名:
一、Shell编程(20分)
程序一: 功能:创建两个字符串变量。变量val1包含一个字符串,变量val2作为一个空字符串创建。进行了如下比较:
If [-n $val1]确定变量val1的长度是否为非零值,如果是非零值,那么将处理then:
If [-z $val2]确定变量val2的长度是否为0,如果是将处理then部分:
If [-z $val3]确定val3的长度是否为0。这个变量没有在shell脚本中定义,所以字符串长度仍然为0.
代码:
$cat test
#!/bin/bash #这句话不是注释,标志要使用的shell
#testing string length
Val1=testing #创建变量Val1
Val2=‟‟ #创建空字符变量Val2
If [-n $val1] #确定变量val1的长度是否为非零值
Then #val1不为0
Echo”The string „$val1‟ is not empty” #val1不为空
Else #否则
Echo “The string „$val1‟ is empty” # val1为空
Fi
If [-z $val2] #确定变量val2的长度是否为0
Then #如果是
Echo”The string „$val2‟ is empty” #val2为空
Else #否则
Echo “The string „$val2‟ is not empty” # val2不为空
Fi
If [-z $val3] #确定val3的长度是否为0
Then #是
Echo”The string „$val3‟ is empty” #val3为空
Else #否则 Echo “The string „$val3‟ is not empty” # val3不为空
Fi
程序二:
程序功能:函数参数传递
代码:
#!/bin/sh
yes_or_no() #函数名
{
echo Is your name $* ? #是否你的名字
while true #是
do
echo -n "Enter yes or no:" #选择是否
read x #调用x
case "$x" in #case调用x
y | yes ) return 0 #y代表yes
n | no ) return 1 #n代表no
echo "Answer yes or no" #回答是否
esac #case语句完成
done #执行
}
echo "Original parameters are $*" # 表明传递参数的字符串的个数是任意的
if yes_or_no "$*" #表明接受全部的参数,但也是可以指定某一个参数
then #是
echo "Hi $2, nice name" #表明接受第二个参数
else #否则执行下一条语句
echo "Never mind"
fi
exit 0 #退出
二、Linux操作系统配置实例(20分) Linux操作系统下的apache服务器的httpd.conf文件的基本配置。它的配置命令别分成以下三个相对集中的部分:
1、配置apache服务器在整个运行过程中的环境变量。
2、配置主服务器获默认服务器运行时的详细接口参数。
3、设置虚拟服务器,使得在同一个apache服务器上可完成不同ip地址或不同主机名的web请求。
下面是httpd.conf文件的配置命令:
#环境设置部分
#设置apache服务器的启动方式以守护进程的方式运行。
ServerType standalone
#设置服务器目录
ServerRoot “/usr/local/apache”
#设置服务器用于记录父进程(监控进程)PID的文件
PidFile logs/httpd.pid
#保存服务器内部的处理信息
ScoreBoardFile log/apache_status
#设置服务器与客服端的最大等待时间
Timeout 300
#设置支持续传功能。
KeepAlive On
#设置支持续传功能的数目。
MaxkeepAliveRequests 100
#设置保持续传的最大等待时间
KeepAliveTimeout 15
#设置同时间内进程数目
MaxRequestsPerChild 0
#设置服务器使用进程数目
ThreadsPerChild 50
#准许使用 User www
Group www
#设置存放站点文档目录
DocumentRoot “/usr/local/apache/htdocs”
#设置浏览网页时的缺省页
DirectoryIndex index.htm index.html index.php index.php3
default.html index.cgi
#设置目录
Options FollowSymLinks
AllowsOverride None
Order allow ,deny
Allow from all
#定义每个目录访问控制文件的名称
AccessFileName .htaccess
#定义代理服务器不要缓存页面
CacheNegotiatedDocs
#设定mime型态配置文件所在的位置
TypesConfig conf/mime .types
#错误记录文件设定
ErrorLog logs/error.log
#设定记录文件的格式
LogFormat “%h%l%u%t \”%r\”%>s%b” common
# Alias指令使文件可以放在documentroot之外的本地文件系统里
# scriptAlias指令与Alias指令相同,只不过它还标记该目录包含CGI #或PHP指令文件
Alias/icons/ “/usr/local/apache/icons”
scriptAlias /cgi –bin/ ”/usr/local/apache/cgi -bin” # AddIconByType和AddIcon都是用来设置显示不同的文件类型所使#用的图标列表‘对于每种列出的文件类型,显示列出的第一个符合#的图标
AddIconByType (VID,/icons/movie.gif)vofeo/*
AddIcon/icons/binary,gif,bin,exe
#缺省的文件图标
DefaultIcon/icons/unknown.gif
#有问题或错误发生的情况下apache做出的三种反应
#1、输出自定义的信息(文本)
ErrorDocument 500 The server made a boo boo
#2、重连接到某个本地的URL以处理该问题或错误
ErrorDocument 404 /missing,html
ErrorDocument 404 /cgi –bin/missing_handler.pl
#3、重连接到某个外部的URL以处理该问题或错误
ErrorDocument 402 http://some.other_/subscription_info.html