天天看点

第一个shell script的编写和执行

一 概述

shell script其实是纯文本文件,我们可以编辑这个文件,并利用这个文件来帮助我们执行多个命令,或是利用一些运算与逻辑判断来帮我们达成某些功能。

二 shell script脚本的注意事项

  • 命令的执行是从上而下,从左而右地分析与执行;
  • 命令的执行的过程中,命令,参数间的多个空白都会被忽略掉;
  • 空白行也将被忽略掉,并且[tab]键所得的空白同样视为空格键;
  • 如果读到一个Enter符号(CR),就尝试开始执行命令;
  • 至于如果一行的内容太多,则可以使用“\[Enter]”来扩展至下一行;
  • “#”可以作为批注。任何加在#后面的数据将全部是为批注文字而被忽略。

三 一个简单的shell script文件及解析

#!/bin/bash
#Program:
#        This program shows "Hello World!" in your screen.
#History:
#2020/08/11 ZhouCheng First release
PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
export PATH
echo -e "Hello world! \a \n"
exit 0
           
#!/bin/bash 声明文件内的语法使用bash语法,当该程序被执行的时候,就会加载bash的相关环境配置文件(一般来说就是non-login shell 的~/.bashrc),使得执行bash来使用我们后面的命令能够执行。如果没有配置该行代码,则系统就无法判断该程序使用什么shell来执行代码。

PATH=路径1:路径2:...:路径n意思是可执行文件的路径包括从“路径1”到“路径n”的所有路径。当用户输入一个一串字符并按回车后,shell会依次在这些路径里找对应的可执行文件并交给系统核心执行。

export PATH 在 shell 中执行程序时,shell 会提供一组环境变量。export 可新增,修改或删除环境变量,供后续执行的程序使用。export 的效力仅限于该次登陆操作。

echo -e "Hello world! \a \n"表示在该程序输出Hello world!

使用-e参数并使用sh shell.sh命令 或 利用chmod a+x shell.sh 和./shell.sh 命令执行脚本

第一个shell script的编写和执行

exit命令是用来让程序中断,并返回一个数值给系统。当使用exit 0的时候,代表离开script并回传一个0给系统。

使用echo $?就可以得到0

第一个shell script的编写和执行
其实我们可以利用exit进行自定义错误信息显示,使得脚本更加完善。

四 编写shell script的良好习惯

  • 描述shell script的功能,版本信息;
  • shell script的作者与联系方式;
  • shell script的版权声明方式;
  • shell script的历史记录;
  • shell script中涉及的特殊命令,使用“绝对路径”的方式执行;
  • shell script执行时所需的环境变量预先声明设置。