一、shell编程
- 以文件形式存
批量的Linu命令集合
,该文件能够被Shell解释执行,
这种文件就是Shell脚本程序。 - 通常由一段
Linx命令、Shell命令、 控制语句以及注释语句
构成 - Shell脚本的编写
- Shell 脚本是纯文本文件,可以使用任何文本编辑器编写
- Shell 脚本通常是以**.sh**作为后缀名
二、Shell程序
- 第一行:指定用哪个程序来编译和执行脚本。
#!/bin/bash
#!/bin/sh
注释行: 使用(#)
符号
三、变量
1.变量命名
- 变量名必须以
字母或下划线开头
,后面可以跟字母、数字或下划线。任何其它字符都标志变量名的结束。 - 变量名关于大小写敏感。
2.变量类型
- 根据变量的
作用域
, 变量可以分为本地变量
和环境变量
- 本地变量只在创建它们的 shell程序中可用。而环境变量则在Shell
中的所有用户进程中可用,通常也称为全局变量
。
3.变量赋值
3.1 赋值注意事项
- 等号两边不能有空格
- 如果给变量赋空值,可以在等号后面跟一个换行符
[jingkong@muguangjingkong ~]$ NAME=jingkong
[jingkong@muguangjingkong ~]$ AGE=18
3.2 显示变量的值
echo $variable or echo ${variable}
[jingkong@muguangjingkong ~]$ echo $NAME
jingkong
3.3 清除变量
unset variable
3.4 显示所有变量
set
4.环境变量
环境变量称为全局变量,按照惯例需要大写
export LANG
- 注意:
- 可被所有的shell环境下访问
- 如果父shell进程产生了子shell进程,则环境变量可被“继承”并复制
[jingkong@muguangjingkong ~]$ vi .bash_profile
最后一行插入:export NAME_TEST=jingkong
#source命令:修改环境变量之后立即生效
[jingkong@muguangjingkong ~]$ source .bash_profile
#.bash_profile当前jingkong用户的环境变量,切换其他非root用户无法使用
[jingkong@muguangjingkong ~]$ echo $NAME_TEST
jingkong