最近闲来无事,准备学习下shell编程。至于什么是shell,shell是用来干什么的?我相信但凡学习他的人都是有目的而来的。如果是像我这样的fish,那么还是等用到的时候再来学习吧。
参考书籍:《shell编程:从入门到精通》,张昊著。
接下来就可以开始我们的shell之旅了。首先,介绍到的是如何执行linux程序的?实际上,可分为两种,一种是调用解释器执行程序,还有一种是使用source来执行文件。
- 调用解释器执行程序:在程序的第一行通过“#!/XXX/XXX”来确定对程序使用怎样的进程来执行此程序。如果有需要还可以在解释器后加参数,例如:-l,-V等等。在执行过程中,存在进程的创建和消亡。
- 使用source执行程序:使用source执行shell脚本时,不会创建子进程,而是在父进程中直接执行,没有进程的创建和消亡。当需要在程序中修改当前shell本身的环境变量时,使用source命令执行。
其次,需要了解shell命令的种类:内建命令,shell函数、外部命令。
- 内建命令:shell本身包含的命令,可以通过help来查看。
- shell函数
- 外部命令:执行此命令时,需要复制一个与当前shell一样的进程,存在进程的创建和消亡。