Shell编程

Posted p0st

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Shell编程相关的知识,希望对你有一定的参考价值。

Shell是操作系统的最外层,Shell可以合并编程语言以控制进程和文件,以及启动和控制其它程序。Shell 通过提示您输入,向内核解释该输入,然后处理来自内核的任何结果输出。

简单来说Shell就是一个用户跟操作系统之间的一个命令解释器。

技术分享图片

Linux Shell种类非常多,常见的SHELL如下:

Bourne Shell/usr/bin/sh/bin/sh

Bourne Again Shell/bin/bash

 C Shell/usr/bin/csh

 K Shell/usr/bin/ksh

 Shell for Root/sbin/sh

查看shell解释器类型

echo $SHELL

Shell脚本编程命名规则:

Shell脚本名称命名一般为英文、大写、小写;

不能使用特殊符号、空格来命名;

Shell脚本后缀以.sh结尾;

不建议Shell命名为纯数字,一般以脚本功能命名。

Shell脚本内容首行需以#!/bin/bash开头; 

Shell脚本中变量名称尽量使用大写字母,字母间不能使用“-”,可以使用“_”;

Shell脚本变量名称不能以数字、特殊符号开头。

shell脚本内容详解

#!/bin/bash           固定格式,定义该脚本所使用的Shell解释器类型;

#This is my First shell     #号表示注释,没有任何的意义,SHELL不会解析它;

#By author jfedu.net 2017 表示脚本创建人,#号表示注解;

echo  “Hello  World !” Shell脚本主命令,执行该脚本呈现的内容。

 

shell脚本赋予执行权限并执行

赋权:chmod o+x first_shell.sh

执行:bash | /bash/sh  | /bin/bash first_shell.sh

下面来编写一个简单的apache服务器安装脚本

技术分享图片
#!/bin/bash
#2018年10月8日21:25:15
#by authpr p0st
#this is auto install apache web v1
yum install -y wget bzip2-devel tar make zlib zlib-devel
yum install -y gcc gcc-c++ apr-devel apr-util-devel pcre-devel
wget -c https://mirrors.tuna.tsinghua.edu.cn/apache/httpd/httpd-2.4.34.tar.bz2
tar -xf httpd-2.4.34.tar.bz2
cd httpd-2.4.34.tar.bz2
./configure --prefix=/usr/local/apache2 --enable-so --enable-rewrite --enable -proxy
make
make install
/usr/local/apache2/bin/apachectl start
systemctl stop firewalld.service
setenforce 0
echo "/usr/local/apache2/bin/apachectl start" >>/etc/rc.local
View Code

 

以上是关于Shell编程的主要内容,如果未能解决你的问题,请参考以下文章

代码片段:Shell脚本实现重复执行和多进程

Linux bash基础特性二

VSCode自定义代码片段——JS中的面向对象编程

VSCode自定义代码片段9——JS中的面向对象编程

使用 Pygments 检测代码片段的编程语言

面向面试编程代码片段之GC