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进程空间中执行

原文地址:https://www.cnblogs.com/chengting/p/11515700.html

时间: 2024-10-09 14:38:35

shell编程概念介绍及变量定义--关于脚本运行与shell进程之间的关系的相关文章

shell编程(一)---变量

变量是内存空间,通过变量名引用变量的时候,称为命名的内存空间. 定义一个变量,就是给变量分配一段编址的内存空间,给变量赋值,就是往内存空间里面填充数据. 变量类型:事先定义好数据的存储格式和长度.不同的数据类型所占用的存储空间和存储格式也不一样. 变量类型如: 字符类型. 数值类型.分为整型.浮点型 日期和时间型. 布尔型. 逻辑运算:与(and).或(or).非 and:&&    只要有一个为假,结果就为假.只有两者都为真,结果才为真. or:||     只要有一个为真,结果就为真.

小鸟初学Shell编程(七)变量引用及作用范围

变量引用 那么定义好变量,如何打印变量的值呢?举例下变量引用的方式. ${变量名}称作为对变量的引用 echo ${变量名}查看变量的值 ${变量名}在部分情况下可以省略成 $变量名 [[email protected] ~]# string="hello Shell" [[email protected] ~]# echo ${string} hello Shell [[email protected] ~]# echo $string hello Shell 那么有花括号括起来的变

shell编程基本语法和变量

一.编写shell脚本基本格式 拿最简单的hello word举例 .#!/bin/bash echo 'hello world' .#!/bin/bash:告诉计算机,使用bash解释器来执行代码 echo: 打印 二.运行shell脚本 方法一(推荐使用) chmod 777 myshell.sh #给文件权限 ./myshell.sh #运行文件 方法2 sh myshell.sh 三.注释 单行注释 #内容 多行注释 :<<! 内容 ! 四.定义变量 基本语法 1.定义变量:变量名=变

小鸟初学Shell编程(六)变量赋值

变量的意义 我们在使用Linux命令或脚本的时候,会有一些输出,那么这些输出的信息可以用变量临时存储,以备我们下一条命令或脚本使用. 变量的定义 变量的定义建议用一个有意义的英文单词来代表变量,不要使用简单的字母a,b 这类的变量名定义.因为我们写好Shell脚本实际上是要给人看的,所以我们定义好的变量,是希望变量有具体的含义,能让阅读Shell脚本人能轻松的明白. 变量的命名规则: 字母.数字.下划线 不以数字开头 变量的赋值 为变量赋值的过程,称为变量替换 Shell脚本里变量是不区分变量类

Shell编程从入门到精通-第二章.shell变量

二.Shell变量 2.1.什么是变量 在小学的时候我们学过数学方程式,例如:已知x=1,y=x+1那么y等于多少 在上述的题目中x和y被称为未知数,但是在shell编程里它们是变量名,等号右边的1和x+1是变量的内容,(这里"="被称为赋值) 通过上面的介绍可以得出,变量就是用一个固定的字符串代替更多,更复杂的内容,该内容包含变量.路径.字符串等其他的内容,变量是暂时存储数据的地方和标记,所存储的数据存在内存空间中,通过调用内容空间的变量名字就可以取出变量对应的数据.使用变量最大的好

Linux Shell编程变量赋值和引用

我们可以使用任意一种文字编辑器,比如gedit.kedit.emacs.vi等来编写shell脚本,它必须以如下行开始(必须放在文件的第一行): #!/bin/sh ... 注意:最好使用“!/bin/bash”而不是“!/bin/sh”,如果使用tc shell改为tcsh,其他类似. 符号#!用来告诉系统执行该脚本的程序,本例使用/bin/sh.编辑结束并保存后,如果要执行该脚本,必须先使其可执行: chmod +x filename 此后在该脚本所在目录下,输入 ./filename 即可

老男孩新书Shell编程实战预定开始了-包邮包答疑

老男孩新书Shell编程实战预定开始了(扫图中二维码购买包邮定期包答疑),亲爱的伙伴们,让你们久等了.电脑用户猛戳 电脑购买链接 注意:包邮包3个月(2017春节后起算)Q群书籍内容答疑,等于白送书,还倒搭答疑服务. 如果觉得给力,请帮忙朋友圈.QQ群.空间转载! 活动优惠仅限本次活动,从其他渠道购买不享受此次的服务承诺. 定价 89元 基本信息 作者: 老男孩 丛书名: Linux/Unix技术丛书 出版社: 机械工业出版社 ISBN:9787111556077 上架时间:2017-1-6 出

shell编程学习1

1.shell是操作系统的终端命令行 (1)shell可以理解为软件系统提供给用户操作的命令行界面,可以说它是人机交互的一种方式.    (2)我们可以使用shell和操作系统.uboot等软件系统进行交互.具体来说就是我们通过shell给软件系统输入命令然后回车执行,执行完成后又会回到shell命令行可以再次输入         命令执行.    (3)上述的操作方式一般情况下工作很好,但是有缺陷.譬如我们要在linux下创建一个文件a.c,可以touch a.c 但是如果我现在是用在linu

bash shell编程

命令行编辑: 光标跳转 ^a 跳到命令行首 ^e 跳到命令行尾 ^<- 向左跳转一个单词 ^-> 向右跳转一个单词 ^b    左移一个字符 ^f    右移一个字符 删除 ^u 删除光标至命令行首的内容 ^k 删除光标至命令行尾的内容 ^d 删除光标所在处的字符 ^h  = BackSpace功能 ^l  清屏 Bang (!) 命令 !!     执行上一条命令 !blah    执行最后一次以blah开头的命令 !$    上一条命令的最后一个参数 (Esc+. 和Alt+.都是效果相同