本地变量:

    变量赋值:name=value

    变量引用:${name}  , $name

        "":变量名会替换为其值

        '':变量名不会替换为其值

    查看变量: set

    撤销变量:unset name

     notice :  此处非变量引用------>>>>此处设置的变量只对当前终端bash/shell起作用  对其子shell 都不起作用

  环境变量:

    变量赋值:

         (1)   export name=value

         (2) name=value;export name

         (3)  declare -x name = value

         (4) name = value ; declare -x name

      变量引用: ${name}    , $name

      notice:  bash内嵌了许多环境变量(通常为全大写字符),用于定义bash的工作环境

        PATH, HISTSIZE  HISTFILE HISTFILSIZE HISTCONTROL SHELL HOME UID自己定义的环境变量不能与这些环境变量相互冲突

      查看环境变量: set

              env

              printenv

                 declare -x

              export    以上这些命令都可以查看环境变量

  只读变量:

    (1)  declare -r name

    (2) readonly name

     notice:只读变量无法重新赋值,并且不支持撤销:存活时间为当前shell进程的生命周期,随shell进程终止而终止;  

   变量名:见名知义,命名机制遵循某种法则;不能使用程序的保留字符

   bash特性之多命令执行:

    ~] # COMMON1;COMMON2;COMMON3;..............命令之间没有逻辑关系

  逻辑运算:

    运算数:真(true, yes, on 1)

        假(false,no,off 0)

      与:  1 && 1 = 1

          1 && 0 = 0

          0 && 1 = 0

          0 && 0 = 0

      或:

          1  || 1 =  1

          1  ||  0 =  1

          0  ||  1 =  1

          0  ||  0  =  0

      非:

          ! 1 = 0

          ! 0 = 1

      异或:判断是否不同

            俩个数字运算时的数字不相同为 1    相同则为  0

  短路法则:

    ~] # common1 && common2

      common1为 ‘假’  ,则common2不会再执行

      否则,common1 为‘真’ , 则common2必须执行

    ~] # common1 || common2

      common1 为 ‘真’  则common2 不会执行

      否则,common2执行

    ~] #  id $useraname  || useradd $username

          

bash 变量的更多相关文章

  1. Shell基础-Bash变量-用户自定义变量

    变量设置规则: 变量名称可以由字母.下划线和数字组成,但是不能由数字开头. 在Bash中变量的默认类型是字符串类型,若需要进行数值运算,则需指定变量类型为数值型.变量用等号链接,且两边不能有空格.若需 ...

  2. 转 玩转Bash变量

    PS : 注意本文讨论的是Bash,而不一定是/bin/sh所链接的那个shell.这里出现的所有代码片段,默认在顶上都添加了#!/bin/bash. 一门自带混淆的语言 while (( $# )) ...

  3. Shell学习之Bash变量详解(二)

    Shell学习之Bash变量详解 目录 Bash变量 Bash变量注意点 用户自定义变量 环境变量 位置参数变量 预定义变量 Bash变量 用户自定义变量:在Bash中由用户定义的变量. 环境变量:这 ...

  4. linux bash变量作用域

    linux bash变量作用域 一,思考一个问题,当在shell里执行某个程序时,shell是怎么找到这个程序的? shell会去$PATH环境变量定义的目录里去找这个命令.环境变量里一般包括/usr ...

  5. linux学习18 shell脚本基础-bash变量和逻辑运行

    一.回顾 1.用户管理,权限管理,install,mktemp 2.用户管理: 3.权限管理: mode,ownership mode: user group other r w x 4.命令:ins ...

  6. 二:shell之bash变量

    1.变量的分类: 用户自定义变量:   变量自定义 默认存储是字符串环境变量:              这种变量中主要保存的是和系统操作环境相关的数据.变量可以自定义,但是对系统生效的环境变量名和变 ...

  7. Linux学习笔记(16)shell基础之Bash变量

    1. 用户自定义变量 (1)变量设置规则 ① 变量名称可由字母.数字和下划线组成,但不能以数字开头: ② 变量的默认类型为字符串类型,如果要对数值运算,则必须指定变量类型为数值型: ③ 变量用等号连接 ...

  8. Bash:-变量替换后利用大括号获取数字存在的间隔

    比如脚本输入位置变量:1_5 输出效果为: 1 2 3 4 5 脚本代码如下: #!/bin/bash i=1_5 for j in $(eval echo {${i/_/\..}});do echo ...

  9. linux笔记:shell基础-bash变量

    shell变量设置规则: 变量的分类: 环境变量的设置: 系统常见环境变量: 位置参数变量(用来接收脚本的参数): 预定义变量: 接收键盘输入(将键盘输入的值赋值给变量名): 用declare声明变量 ...

  10. bash变量操作

    1.条件变量替换: Bash Shell可以进行变量的条件替换,既只有某种条件发生时才进行替换,替换 条件放在{}中. (1) ${value:-word} 当变量未定义或者值为空时,返回值为word ...

随机推荐

  1. Tortoisegit和GitHub使用入门

    作为一个Code人对于github并不陌生吧,记录下使用说明: gitHub是一个面向开源及私有软件项目的托管平台,因为只支持git 作为唯一的版本库格式进行托管,故名gitHub. 工具: git: ...

  2. unity3d-游戏实战突出重围,第二天 制作血条

    using UnityEngine; using System.Collections; public class xt : MonoBehaviour { //红色血条 public Texture ...

  3. 树结构控件实例 TreeControl

    树结构控件实例 书:157 <?xml version="1.0" encoding="utf-8"?> <s:Application xml ...

  4. shell编程:case语句

  5. 44.JS--hover事件防重复效果

    遇到一种情况,就是运用hover事件的时候,会出现对象(主要是图片)闪动现象.主要是由于hover事件重复触发导致这一现象. html: <p class="smallImg" ...

  6. C# - 匿名对象取值

    在new出匿名对象的函数内可以直接调用该匿名对象的属性取值. 可是在其它函数就无法调用匿名对象的属性或方法. 这时,我们可以通过c#的反射机制取值: 文章出处:https://www.cnblogs. ...

  7. codeforces 957 A. Tritonic Iridescence

    题意: 给出一个字符串,要求任意两个相同的字母不能相同,问这个字符串是否能有两种或者两种以上的表现形式. 思路: 简单判断一下: 1.问号在端点: 2.连续两个问号或者以上: 3.一个问号两端的字母是 ...

  8. this上下文一致

    什么是this对象 先来说说什么是this对象吧,每个函数在调用的时候都会自动获取两个特殊变量:this和arguments对象.this值具体是指哪个对象是和该函数的执行环境相关的.如果是作为对象的 ...

  9. sql server 中后缀为.mdf的文件是干什么用的??

    在微软的SQL Server 2000 数据库有三种类型的文件: 1)主要数据文件(扩展名.mdf是 primary data file 的缩写) 主要数据文件包含数据库的启动信息,并指向数据库中的其 ...

  10. vs实现数据库数据迁移

    public ActionResult About() { List<ChangeData.Models.old.adsinfo> adsinfo_new = new List<Mo ...