为什么要学习shell编程?
linux系统中会大量使用shell,自动化运维也需要shell编程。
批处理动作,解放双手,避免重复性劳动。
什么是shell?
shell编程就是对一堆Linux命令的逻辑化处理。
它是一种应用程序,提供了一个界面,用户通过这个界面访问操作系统内核的服务,即shell是操作系统内核和用户之间的解释器。
shell脚本
运维人员将命令放入文件中执行,这个文件称为shell脚本文件。也是我们平时最多打交道的东西。
但严格意义上讲,shell和shell脚本是两个不同的概念。
CentOS 7 中的默认shell
第一个shell脚本
#! 是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行,即使用哪一种 Shell。
扩展名sh(sh代表shell)并无实际意义,见名知意,让开发人员知道这是一个shell脚本。
chmod +x 使脚本具有执行的权限,注意执行脚本时必须写成 ./test.sh,如果只写test.sh,系统回去PATH(/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)中寻找有没有叫test.sh的:
也可以直接使用命令 /bin/bash test.sh 来执行,但这样约定的第一行就没有意义了。