基本
概念
- Shell 脚本(shell script),是一种为 shell 编写的脚本程序。
- Shell 编程跟 JavaScript、php 编程一样,只要有一个能编写代码的文本编辑器和一个能解释执行的脚本解释器就可以了。
类别
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)
Bourne Again Shell是大多数Linux 系统默认的 Shell。
运行
- 作为可执行程序
chmod +x ./test.sh #使脚本具有执行权限
./test.sh #执行脚本
- 作为解释器参数
/bin/sh test.sh
语法
基本
#!/bin/bash
#! 是一个约定的标记,它告诉系统这个脚本需要什么解释器来执行,即使用哪一种 Shell。
变量
类型
- 局部变量:仅在当前shell实例中有效
- 环境变量:所有程序都可访问
- shell变量:shell程序设置的特殊变量
定义
your_name="runoob.com"
1.变量名和等号之间不能有空格
2.不能使用bash里的关键字
3.命名只能使用英文字母,数字和下划线,首个字符不能以数字开头
your_name="runoob.com"
readonly your_name
使用readonly将变量设为只读,不能修改
使用
your_name="qinjx"
echo $your_name
使用一个定义过的变量,只要在变量名前面加美元符号即可
your_name="qinjx"
echo "你的名字是:${your_name},欢迎你"
花括号用来定义边界
your_name="qinjx1"
your_name="qinjx2"
变量可以重新被定义
删除
your_name="qinjx"
unset your_name
1.使用 unset 命令可以删除变量,变量被删除后不能再次使用。
2.unset 命令不能删除只读变量。
myUrl="https://www.runoob.com"
unset myUrl
echo $myUrl
以上实例执行将没有任何输出