好记性不如烂笔头--linux学习笔记9练手写个shell脚本

时间:2023-03-09 04:41:07
好记性不如烂笔头--linux学习笔记9练手写个shell脚本
#!/bin/bash
#auto make install httpd
#by authors baker95935 #httpd define path variable
H_FILES=httpd-2.4..tar.bz2
H_FILES_DIR=httpd-2.4.
H_URL=http://mirrors.shuosc.org/apache/httpd/
H_PREFIX=/usr/local/apache2/ if [ -Z "$1" ];then
echo -e "\033[36mplease select install menu follow:\033[0m"
echo -e "\033[32m1)编译安装apache服务器\033[1m"
echo "2)编译安装mysql服务器"
echo "3)编译安装php服务器"
echo "4)配置index.php并启动lamp服务"
echo -e "\033[31musage:{/bin/sh $0 1|2|3|4|help}\033[0m"
exit
fi if [ $ -eq ];then
wget -c $H_URL/$H_FILES &&tar -jxvf $H_FILES &&cd $H_FILES_DIR; if [ $? -eq ];then
#make && make install
echo -e "\033[32mTHE $H_FILES_DIR server install successfully!\033[0m" else echo -e "\033[32mTHE $H_FILES_DIR server install failed,please check...\033[0m"
exit fi
else
echo -e "\033[32m dowload failed,please check url\033[1m"
exit
fi

练手写的shell脚本,可自动下载apache,然后切换到apache的目录

如果在加上编译 和安装 就是可以自动完成了

if语句里面的几个参数标注下

1)-z  就是为空

2)$1 就是第一个参数

$2就是在命令行中输入的第2个参数

比如 /bin/bash auto_install_httpd.sh  1

这个里面的1 就是第一个参数

3)$? 是上个命令的退出状态或者返回值

4)格式: echo -e "\033[字背景颜色;字体颜色m字符串\033[0m"

例如: 
echo -e "\033[41;36m something here \033[0m"

其中41的位置代表底色, 36的位置是代表字的颜色

那些ascii code 是对颜色调用的始末. 
\033[ ; m …… \033[0m

字背景颜色范围:40----49 
40:黑 
41:深红 
42:绿 
43:黄色 
44:蓝色 
45:紫色 
46:深绿 
47:白色

字颜色:30-----------39 
30:黑 
31:红 
32:绿 
33:黄 
34:蓝色 
35:紫色 
36:深绿 
37:白色

===============================================ANSI控制码的说明 
\33[0m 关闭所有属性 
\33[1m 设置高亮度 
\33[4m 下划线 
\33[5m 闪烁 
\33[7m 反显 
\33[8m 消隐 
\33[30m -- \33[37m 设置前景色 
\33[40m -- \33[47m 设置背景色 
\33[nA 光标上移n行 
\33[nB 光标下移n行 
\33[nC 光标右移n行 
\33[nD 光标左移n行 
\33[y;xH设置光标位置 
\33[2J 清屏 
\33[K 清除从光标到行尾的内容 
\33[s 保存光标位置 
\33[u 恢复光标位置 
\33[?25l 隐藏光标 
\33[?25h 显示光标