shell编程,求高手帮助,小弟感激不尽!!!小弟分不多,只能给这么多先
1.用Shell编程,判断一文件是不是字符设备文件,如果是将其拷贝到/dev目录下,并把权限改为6442.设计一个shell程序,添加一个新组为class1,然后添加属于...
1.用Shell编程,判断一文件是不是字符设备文件,如果是将其拷贝到 /dev 目录下,并把权限改为644
2.设计一个shell程序,添加一个新组为class1,然后添加属于这个组的30个用户,用户名的形式为stdxx,其中xx从01到30。
3.设计一个shell,名称为myftp.sh,该shell有3个参数,要求如下:
3.1.myftp.sh start,则执行命令 service vsftpd start
3.2.myftp.sh stop,则执行命令 service vsftpd stop
3.3.myftp.sh restart,则执行命令 service vsftpd restart
3.4.用户输入其他参数,则给出错误提示,并输出shell的用法给用户
4.设计一个备份shell,启动该shell后,让用户选择完全备份还是增量备份,要求如下:
4.1.完全备份(full backup):把/usr/data下的所有目录和文件归档并压缩为文件full-bak-year-month-day-hours-minutes-seconds.tar.gz(例如full-bak-2011-04-25-01-00-08.tar.gz),并把该文件拷贝到/home/oracle/backup/目录下
4.2.增量备份(increment backup),把/usr/data下创建日期为当天的所有目录和文件归档并压缩为文件part-bak-year-month-day-hours-minutes-seconds.tar.gz(例如part-bak-2011-04-25-01-00-08.tar.gz),并把该文件拷贝到/home/oracle/backup/目录下
4.3.用户如果选择错误,给出提示 展开
2.设计一个shell程序,添加一个新组为class1,然后添加属于这个组的30个用户,用户名的形式为stdxx,其中xx从01到30。
3.设计一个shell,名称为myftp.sh,该shell有3个参数,要求如下:
3.1.myftp.sh start,则执行命令 service vsftpd start
3.2.myftp.sh stop,则执行命令 service vsftpd stop
3.3.myftp.sh restart,则执行命令 service vsftpd restart
3.4.用户输入其他参数,则给出错误提示,并输出shell的用法给用户
4.设计一个备份shell,启动该shell后,让用户选择完全备份还是增量备份,要求如下:
4.1.完全备份(full backup):把/usr/data下的所有目录和文件归档并压缩为文件full-bak-year-month-day-hours-minutes-seconds.tar.gz(例如full-bak-2011-04-25-01-00-08.tar.gz),并把该文件拷贝到/home/oracle/backup/目录下
4.2.增量备份(increment backup),把/usr/data下创建日期为当天的所有目录和文件归档并压缩为文件part-bak-year-month-day-hours-minutes-seconds.tar.gz(例如part-bak-2011-04-25-01-00-08.tar.gz),并把该文件拷贝到/home/oracle/backup/目录下
4.3.用户如果选择错误,给出提示 展开
展开全部
#!/bin/bash
for((i=1;i<=80;i++))
do
if [[ $i -ge 1 ]] && [[ $i -le 10 ]]
then
a[$i]="少年"
elif [[ $i -ge 11 ]] && [[ $i -le 30 ]]
then
a[$i]="青年"
elif [[ $i -ge 31 ]] && [[ $i -le 50 ]]
then
a[$i]="中年"
elif [[ $i -ge 51 ]] && [[ $i -le 80 ]]
then
a[$i]="老年"
fi
done
for((;;))
do
read -p "请输入年龄:" age
# 输入end结束程序
if [[ $age = "end" ]]
then
break
fi
awk 'BEGINif('$age' in a)exit 0;else exit 1;}'
if [[ $? -eq 0 ]]
then
echo $
else
echo "输入年龄错误,必须为1-80整数"
fi
done
已经过测试,结果如下
请输入年龄:1
少年
请输入年龄:2
少年
请输入年龄:21
青年
请输入年龄:31
中年
请输入年龄:51
老年
请输入年龄:80
老年
请输入年龄:81
输入年龄错误,必须为1-80整数
请输入年龄:2.1
输入年龄错误,必须为1-80整数
请输入年龄:q
输入年龄错误,必须为1-80整数
请输入年龄:0
输入年龄错误,必须为1-80整数
请输入年龄:end
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
我只列出关键字 和思路吧
1 if [ -c $filename ] chmod 644 $filename
2 addgroup class1
for id in {01..30}
do
adduser -g class1 std$num
done
3 if [ $cmd == 'start' ]
then
elif [ ]
then
else
fi
4 touch -t 201106070000 FileBegin
touch -t 20110607235959 FIleEnd
find . -type f -newer FileBegin -a !-newer FIleEnd
tar -czf A.tar SrcFile
1 if [ -c $filename ] chmod 644 $filename
2 addgroup class1
for id in {01..30}
do
adduser -g class1 std$num
done
3 if [ $cmd == 'start' ]
then
elif [ ]
then
else
fi
4 touch -t 201106070000 FileBegin
touch -t 20110607235959 FIleEnd
find . -type f -newer FileBegin -a !-newer FIleEnd
tar -czf A.tar SrcFile
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |