1.4.3 linux和高并发-shell编程-变量

目录

1.写在前面

2.变量(本地变量+局部变量+位置变量)

 3.数组

4.变量(特殊变量+环境变量)

4.1 查看参数个数等各种信息

4.2 $$ 和 $BASHPID  + 管道

 4.3 查看上一次命令的执行状态


1.写在前面

        我们现在学习一个脚本里面新的东西叫做变量。我们之前是见过变量这个东西的,在用echo打印的时候,需要带上$

2.变量(本地变量+局部变量+位置变量)

        变量分为5种变量,有本地、局部、位置、特殊、环境。我们会具体讲这5中变量的使用情况。

  • linux中函数的构造,看一下本地变量和局部变量的区别:
  •  
  •         测试一下位置变量:
  •         更改sh文件,测试echo $12的效果,假设第一个是$1是a,会输出a2。想要输出l,可以将12括起来变成:echo ${12}
  •         位置变量在函数中的使用:

 3.数组

        linux中也有数组的相关使用,在linux中bash对逗号不够敏感,对空格敏感。而且在取值的时候需要用括号括起来。

4.变量(特殊变量+环境变量)

        变量还有两种是特殊变量和环境变量。

4.1 查看参数个数等各种信息

4.2 $$ 和 $BASHPID  + 管道

        我们的这个管道是bash一块的,我们的管道是一种特殊的文件,把左边命令的输出转为一维命令的输入,这是一个最基础的认知。管道会用 | 分成两部分,左右两边分别开启两个子bash。所以a=22是在子bash中开启的,有声明周期,随着子bash运行结束,a=22也结束了,外面这层bash还是a=9。

        export导出会使得父bash中变量继承在了子bash中(不能跨bash,只能在父子bash中继承):

        $$在bash中是比较特殊的,本来在管道中会产生子bash,pid是不一样的,但是$$却会产生一样的结果,正确的查看方式是利用 $BASHPID 查看即可:

 4.3 查看上一次命令的执行状态

        当上一次命令执行成功的时候,输出0,执行失败的时候,输出非0(没有其他限制,只有0和非0):

发布了322 篇原创文章 · 获赞 216 · 访问量 27万+

猜你喜欢

转载自blog.csdn.net/Suyebiubiu/article/details/104515761