shell编程概念介绍及变量定义--关于脚本运行与shell进程之间的关系
Posted chengting
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了shell编程概念介绍及变量定义--关于脚本运行与shell进程之间的关系相关的知识,希望对你有一定的参考价值。
shell是用户与内核进行交互操作的一种接口,目前最流行的shell称为bash shell
shell也是一门编程语言<解释型的编程语言>,即shell脚本<就是用 linux 的 shell 命令编程>
一个系统可以存在多个shell,可以通过 cat/etc/shells 命令查看系统中安装的shell,不同的shell 可能支持的命令语法是不相同的
基本格式
代码写在普通文本文件中,通常以 .sh为后缀名
例vi hello.sh:
#!/bin/bash ##表示用哪一种shell解析器来解析执行我们的这个脚本程序
echo "hello world"
执行脚本:sh hello.sh
或给脚本添加x权限,直接执行:chmod +x hello.sh
./hello.sh
系统变量
linux shell中的变量分为“系统变量”和“用户自定义变量”
可以通过set命令查看系统变量
自定义变量
变量=值,等号两边不能有空格 例:STR=abc
变量名称一般习惯为大写
使用变量:$arg
双引号和单引号有区别,双引号仅将空格脱意,单引号会将变量引用比如$param脱意
unset A 撤销变量A
readonly B=2 声明静态的变量B=2,不能unset
export A 可把变量提升为当前 shell 进程中的全局环境变量,可供其他子shell程序使用
一个shell进程无法将自己定义的变量提升到父进程空间中去,而子进程空间只能访问父进程中用export定义的变量,“.”号执行脚本时,会让脚本在调用者所在的shell进程空间中执行
以上是关于shell编程概念介绍及变量定义--关于脚本运行与shell进程之间的关系的主要内容,如果未能解决你的问题,请参考以下文章