linux 编写一个shell脚本文件,实现以下功能

编写一个shell脚本文件,实现以下功能:用户可以选择从键盘输入某一字符以启动某种服务器,如输入“a”时启动apache服务器;输入“m”时启动mysql服务器;输入“s”时启动samba服务器;输入“f”时启动ftp服务器;输入“d”时启动dns服务器;输入“e”时退出shell程序。

#!/bin/bash
while true
do
cat <<END
启动Apache(a)
启动Mysql (m)
启动Samba (s)
启动FTP   (f)
启动DNS   (d)
退出脚本   (E)
END
read -p "请输入要执行的操作:" choice
case $choice in
a)
    service httpd start
;;
m)
    service mysqld start
;;
s)
    service samba start
;;
f)
    service vsftpd start
;;
d)
    service named start
;;
E)
     exit
;;
*)
    echo "输入有误,请输入字母a/m/s/f/d启动相应的服务!"
;;
esac
done

这是模板,纯手打。其中的service httpd start之类的可以换成具体的命令,也可以加上if判断。

针对按什么键执行什么操作用case判断最方便

其中

a)的意思是如果$choice等于a的话则执行什么什么

m)的意思是如果$choice等于m的话则之姓什么什么

其余同理

*)的意思是如果没有以上的a) m) f)...的话就会匹配到这一行,就会输出:输入有误,请输入字母a/m/s/f/d启动相应的服务。

read -p "请输入要执行的操作:" choice //这是个交互式的命令,会输出"请输入要执行的操"作到显示器上,然后将你输入的值赋值给变量choice 然后再用case判断变量choice。

if判断也可以。根据个人喜好来。

case xxx in

x)

;;

y)

;;

*)

;;

这是语法。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2021-04-03

相似回答