文章目录
1. shell 与 bash的关系
(1)shell 是什么
Shell 是用户与Linux内核之间的接口。Shell 是一个命令解析器,用户在命令提示符输入的命令都由Shell 解释然后传给内核。
(2)shell 与 bash
bash(全称 Bourne Again Shell) 可以理解为 shell 的一个实例。Linux 的 Shell 种类众多,常见的有:
- Bourne Shell(/usr/bin/sh或/bin/sh)
- Bourne Again Shell(/bin/bash)
- C Shell(/usr/bin/csh)
- K Shell(/usr/bin/ksh)
- Shell for Root(/sbin/sh)
本文主要介绍的为bash,由于其易用和免费,在日常工作中广泛使用,也是大多数Linux默认的shell。
(3)脚本举例
#!/bin/bash
#第一个shell小程序
echo hello world!
2. 如何执行shell脚本
(1)作为可执行程序
chmod +x ./test.sh #使脚本具有执行权限
./test.sh #执行脚本
(2)作为解释器参数
/bin/sh test.sh
3. 编程需要注意的
这是我刚开始shell编程时感受到与其他编程较大的不同,因此在这里特别指出,与大家分享,更多的参考资料见文章末尾链接,具体编程细节不在本文赘述,望见谅。
- 定义变量时,变量名和等号之间不能有空格;
- 使用一个定义过的变量,在变量名前面加美元符号即可;
- 注释以“#”开头,会被解释器忽略;
- 在子任务后加&,可将任务设置为后台运行,使用wait等待所有子任务结束。
4. 参考资料整理
1. Shell教程–菜鸟教程
2. Advanced Bash-Scripting Guide
3. Unix Shell Programming
4. Linux Shell Scripting Tutorial - A Beginner’s handbook