在网上看到很多LNAMP/LAMP一键安装环境,使用了很多种,比较好的就那几种,但是他们的灵活度不够,所以想啊,自己整个出来
http://lnmp.org/install.html
http://www.wdlinux.cn/lanmp/
我是整合这两个环境而成,变化很多。
有很多想法正在慢慢实现中,先把基础的实现。
需实现功能:
1.自定义安装目录(指的是mysql,php,nginx 全部安装到某个目录下)
2.PHP版本选择
以下是用到的 SHELL 命令等
#!/bin/bash是指此脚本使用/bin/bash来解释执行。
其中,#!是一个特殊的表示符,其后,跟着解释此脚本的shell路径。
bash只是shell的一种,还有很多其它shell,如:sh,csh,ksh,tcsh,...
详细介绍:
http://blog.sina.com.cn/s/blog_6336857901019zyz.html
http://blog.csdn.net/jackalfly/article/details/7571616
详细介绍:
http://www.cnblogs.com/zhangze/articles/1832542.html
http://blog.csdn.net/zcywell/article/details/7687178
http://blog.csdn.net/embed2010/article/details/5988267
更多详细介绍:
http://see.xidian.edu.cn/cpp/html/1498.html
http://hi.baidu.com/auyvfshtkhbegid/item/49f0d13009c141312e0f817a
SHELL中的exit 0 和 exit 1有什么区别?
当你 exit 0 的时候,在调用环境 echo $? 就返回0,也就是说调用环境就认为你的这个程序执行正确。
当你 exit 1 的时候,一般是出错定义这个1,也可以是其他数字,很多系统程序这个错误编号是有约定的含义的。 但不为0 就表示程序运行出错。 调用环境就可以根据这个返回值判断 你这个程序运行是否ok。
如果你用 脚本 a 调用 脚本b ,要在a中判断b是否正常返回,就是根据 exit 0 or 1 来识别。
执行完b后, 判断 $? 就是返回值
更多详细介绍:
http://www.hndy1688.com/service-60.html
条件判断
更多详细介绍:
http://www.cnblogs.com/276815076/archive/2011/10/30/2229286.html
http://blog.chinaunix.net/uid-20788517-id-3135826.html
declare -a ARR #声明一个数组 ARR 可以自定义
ARR['key']="值" #给数组某键赋值
echo ${ARR['kye']} #在屏幕上输出该键值
echo ${ARR[*]} #输出所有值 或者 ${ARR[@]}
echo ${#ARR[*]} #数组长度个数 或者${#ARR[@]}
echo ${!array[*]} #输出数组所有键 或者 ${!array[@]}
http://www.cnblogs.com/fhefh/archive/2011/04/22/2024857.html
http://hi.baidu.com/liuhelishuang/item/efaff6d33faacbe5b3f777b2
http://www.cnblogs.com/zhuyp1015/archive/2012/07/07/2580716.html
http://blog.csdn.net/ysdaniel/article/details/7909824
http://hi.baidu.com/liuhelishuang/item/efaff6d33faacbe5b3f777b2
http://hi.baidu.com/liuhelishuang/item/efaff6d33faacbe5b3f777b2
source或点 不是直接执行一个文件,而是从一个文本文件里面读命令行,然后执行这些命令
另外一种意思
shell 加载 其他文件,包含其他文件(可以把一个很大SHELL分开来,例如一个文件专门配置文件,一个文件是函数库文件)
http://blog.csdn.net/xiaolang85/article/details/7861441
http://blog.chinaunix.net/uid-22028566-id-3182362.html
调用:
fname "test1" "test2"
必须在调用函数地方之前,声明函数,shell脚本是逐行运行。不会像其它语言一样先预编译。一次必须在使用函数前先声明函数
参数返回,可以显示加:return 返回(0-255),如果不加,将以最后一条命令运行结果,作为返回值
http://www.cnblogs.com/chengmo/archive/2010/10/17/1853356.html
http://blog.csdn.net/dreamtdp/article/details/8048720
http://blog.csdn.net/ph123456789/article/details/6334040
i=10;
whil [[ $i -gt 5 ]];do
echo$i;
((i--));
done;
read -p "Please Input 1,2,3,4,5: " SERVER_ID
echo "Input $SERVER_ID"
read命令接收标准输入(键盘)的输入,或其他文件描述符的输入(后面在说)。得到输入后,read命令将数据放入一个标准变量中
http://blog.sina.com.cn/s/blog_4077692e0100r7ct.html
清空本显示屏幕
chmod 777 test.txt
http://www.cnblogs.com/peida/archive/2012/11/29/2794010.html
http://blog.163.com/yang_jianli/blog/static/1619900062012116101843165/
19.uname
20.basename
21.$() 括号 与 `` 反引号
22.${} 变量替换
23.$ 变量
25.type -p
26.ls 显示目录下文件和目录
http://www.cnblogs.com/peida/archive/2012/10/23/2734829.html
http://www.cnblogs.com/peida/archive/2012/10/26/2740521.html
rmdir doc
http://www.cnblogs.com/peida/archive/2012/10/27/2742076.html
http://linux.sheup.com/linux/4/31078.html
mv test.log test.txt #文件改名
mv test.log log #将文件test.log 移动到log目录中
http://www.cnblogs.com/peida/archive/2012/10/27/2743022.html
cp test.log test.txt #复制文件
cp test.log log #将文件test.log 复制到log目录中
http://www.cnblogs.com/peida/archive/2012/10/29/2744185.html
touch test.log
http://www.cnblogs.com/peida/archive/2012/10/30/2745714.html
http://www.cnblogs.com/peida/archive/2012/11/07/2758084.html
find / -name test.log #全部目录搜索 test.log 文件名
http://www.cnblogs.com/peida/archive/2012/11/16/2773289.html
http://www.cnblogs.com/peida/archive/2012/11/13/2767374.html
http://www.cnblogs.com/peida/archive/2012/11/30/2795656.html
ln -s log.log link2013
http://www.cnblogs.com/peida/archive/2012/12/11/2812294.html
http://www.cnblogs.com/peida/archive/2012/12/13/2815687.html
ps -ef|grep svn
http://www.cnblogs.com/peida/archive/2012/12/17/2821195.html
kill -9 2123
http://www.cnblogs.com/peida/archive/2012/12/20/2825837.html
killall mysql
http://www.cnblogs.com/peida/archive/2012/12/21/2827366.html
http://www.cnblogs.com/peida/archive/2012/12/24/2831353.html
http://www.cnblogs.com/peida/archive/2013/02/27/2934525.html
http://www.cnblogs.com/peida/archive/2013/03/08/2949194.html
http://www.cnblogs.com/peida/archive/2013/03/15/2960802.html
wget http://url.com/test.zip
http://www.cnblogs.com/peida/archive/2013/03/18/2965369.html
31.groupadd useradd
32./sbin/ldconfig
33.ulimit
35.sed
36.unset
37.netstat -ntl
38.#
39.update-rc.d
40./sbin/iptables
2>&1 | tee -a
更多命令
http://www.cnblogs.com/peida/tag/linux%E5%91%BD%E4%BB%A4/default.html