1.shell编程前言
shell既是用户交互的界面,也是控制系统的脚本语言。在linux系统中,虽然有各种各样的图形化接口工具,但是shell仍然是一个非常灵活的工具。通过使用shell使大量任务自动化,shell特别擅长系统管理任务,其编程优势简洁、开发容易、便于移植。
2.shell程序三种运行方法
(1)可执行文件运行
注:创建一个文件echo.sh
注:#表示挑选执行的shell,此处的shell是Bourne,命令名称为:/bin/sh
注:加执行权限使文件可执行
注:执行可执行文件,输出echo内容
注意此时工作目录在/root
(2)调用解释器运行(还以echo.sh文件为例)
注:文件内去除指定的shell
注:调用Bourne解释器运行文件
注意此时工作目录仍在/root
(3)调用source运行
注:调用source运行
注意此时的工作目录变为/tmp
三种shell程序运行方法说明
(1)前两种shell程序的运行过程,当父进程接受到“/echo.sh”或“/bin/sh echo.sh”,发现不是内建命令,建立一个子进程来执行echo.sh(父进程等待子进程),子进程执行完毕,消亡,父进程继续接受命令。
(2)source执行shell脚本,不会创建子进程,而是在父进程中执行
3.linux shell的变量
linux的变量主要有普通变量和环境变量
(1)普通变量
注:单引号为全引用 双引号为部分应用
(2)环境变量
4.linux shell解释型语言
无需编译,需要解释器。