十七、Shell-Script(上)

king's blog
从本节开始,我们来聊一聊Shell Script,共分为上中下3个章节来进行,该节主要内容如下:
一、Shell Script介绍
二、编写Shell Script步骤
三、Shell Script的注意事项
四、Shell Script的执行方式及区别

一、Shell Script介绍

Shell Script是利用Shell的功能写的程序,并根据shell的语法,将某些指令搭配正则表达式、管道命令、重定向等,相当于DOS批处理。同时Shell Script也支持循环,逻辑判断,数组等功能,使我们能轻松的实现实些复杂和重复的功能。

二、编写Shell Script步骤

那我们如何开始编写Shel Script并执行它呢,通常有如下三个步骤
步骤一:通过Vi编辑Shel Script
步骤二:赋予执行权限
步骤三:执行并输出结果

步骤一:通过Vi编辑Shel Script

登陆到linux环境下,或者通过putty等工具登陆,输入vi first.sh并回车,进入编辑模式(按字母i),输入如下内容:

1
2
#!/bin/bash
echo "Hello World!"

最后按ESC,并输入:wq进行保存,我们通过cat first.sh查看文件内容

1
2
weblogic@ETS157:/opt/project> cat first.sh
echo "Hello World!"
步骤二:赋予执行权限

如果想要执行该Shell Script,则需要有执行权限(x),否则无法执行,如下提示无执行权限

1
2
weblogic@ETS157:/opt/project> ./first.sh
-bash: ./first.sh: Permission denied

我们通过ll命令可查看该文件果然没有执行权限,如下:

1
2
weblogic@ETS157:/opt/project> ll first.sh
-rw-r--r-- 1 weblogic wasgroup 20 Mar  7 13:56 first.sh

我们来给该文件属主加上执行权限

1
2
3
4
weblogic@ETS157:/opt/project> chmod u+x first.sh

weblogic@ETS157:/opt/project> ll first.sh
-rwxr--r-- 1 weblogic wasgroup 20 Mar  7 13:56 first.sh
步骤三:执行并输出结果

如前面看到的,可通过./first.sh执行该Shell Script

1
2
weblogic@ETS157:/opt/project> ./first.sh
Hello World!

三、Shell Script的注意事项

通过上面的简单例子,我们了解了如果编写和执行一个shell script,但还有如下的一些注意事项
1、shell script是从上往下,从左往右执行的
2、命令和选项及参数间的空白,执行时都会被忽略
3、空行也会被忽略
4、如果需要读入参数,则输入参数后按Enter,则代表参数读入完成,开始执行命令
5、可使用#进行注释,注释行不会被执行

四、Shell Script的执行方式及区别

Shell Script的执行方式?难道Shell Script还有多种执行方式,Yes,Shell Script有两种不同的执行方式,前面提到的只是其中一种执行方式,本节来详细看看有哪两种及有何区别。

方式一:./shellfilename

./shellfilename,这里的shellfilename代表脚本名,可使用相对路径,也可使用绝对路径,用这种执行方式下面两点需要注意,且缺一不可,否则脚本无法执行
1、脚本头部需要包括”#/bin/bash”字样
2、脚本需要有执行权限

该种方式的原理是:通过脚本头去找到shell类型(如上是/bin/bash),再根据传递的脚本名参数是否有执行权限,如果有就开始执行,否则无权执行。

方式二:sh shellfilename

sh shellfilename,和上一种方式一样,这里的shellfilename代表脚本名,可使用相对路径,也可使用绝对路径,但无需满足上面两个条件,一样可以执行。诧异吧,原因在于,该种方式,是通过sh这个命令,来执行shellfilename脚本

Tags:
文 / 甲乙丙丁
LEAVE A REPLY

loading