变量:

变量由字母、数字、_ 组成,不能以数字开头

长度不能超过255个字符

在bash中,变量的默认类型是字符串类型

变量分类:

1、用户自定义变量:只在当前shell生效,是局部变量

定义方法:  变量名=变量值  #等号两边没有空格

调用方法:  $变量名

变量查看:  set命令查看所有变量  选项:  -u #如果设定此选项,调用未声明变量是时会报错(默认无提示)

删除变量:  unset 变量名

变量叠加:  x=${x}test 或 x="$x"test

2、环境变量:这种变量中主要保存和系统操作环境相关的数据。变量可以自定义,但是对系统生效的环境变量名和变量作用是固定的,在当前shell和子shell中生效,是全局变量

定义方法:  环境变量名建议大写

       export 变量名=变量值

     或 变量名=变量值 ; export 变量名

查看方法:  env查看环境变量

删除:    只能在创建变量的shell中删除

常用环境变量:

HOSTNAME  主机名

SHELL  当前shell

TERM  终端环境

HISTSIZE  历史命令条数

SSH_CLIENT  记录ssh客户端ip

SSH_TTY  ssh连接的终端

USER  当前登陆用户

PATH  系统搜索命令的路径

3、位置参数变量:预定义变量的一种,主要是用来向脚本当中传递参数或数据的(实际上常用read命令来代替,后文有提),变量名不能自定义,变量作用固定

$n写在脚本中,作用是把数据传入脚本,如:/root/calcu.sh 32 13  ,其中$0就代表/root/calcu.sh,32就代表$1,13就代表$2

4、预定义变量:是Bash中已经定义好的变量,变量名不能自定义,变量作用也是固定的

$$最近进程的进程号

接收键盘输入

  • read 【选项】【变量名】      #多用于脚本中接收用户输入

选项:

  -p "提示信息"  #在等待read输入时,输出此提示信息

  -t 秒数  #read命令会一直等待用户输入,此选项可以指定等待时间

  -n 字符数  #read命令只接收指定的字符数,收到后自动执行

  -s  #隐藏输入的数据,适用于机密数据的输入

shell编程之变量的更多相关文章

  1. Linux学习——shell编程之变量

    shell编程之变量:Linux shell编程基础中的变量. 包括Bash变量的分类和各变量的详细使用,如:用户自定义变量.环境变量.语系变量.位置参数变量和预定义变量. 1:什么是Bash变量? ...

  2. Linux —— Shell编程之变量赋值和引用

    Linux的shell编程是一种非常成熟的编程语言,它支持各种类型的变量.有三种主要的变量类型:环境变量.内部变量和用户变量. 环境变量(environment variable)是系统环境的一部分, ...

  3. Linux编程 21 shell编程(环境变量,用户变量,命令替换)

    一.概述 这篇介绍shell的变量使用,跟其实语言一样,都有声明变量,使用变量,在shell中变量允许你临时地将信息存储中shell脚本中,以便和脚本的其他命令一起使用. 1.1 环境变量 在前面章节 ...

  4. Shell编程-02-Shell变量

    目录 什么是Shell变量 变量类型 环境变量初始化及其对应文件的生效顺序 什么是Shell变量     在初等数学数学方程式中,我们会经常碰到类似于这样的方程式:y=x+1 ,等号左右两边的x和y称 ...

  5. Linux Shell编程、变量、控制语句

    为什么要学习Shell编程 1)Linux运维工程师在进行服务器集群管理时,需要编写Shell程序来进行服务器管理. 2)对于JavaEE和Python程序员来说,工作的需要,你的老大会要求你编写一些 ...

  6. linux shell编程之变量和bash配置文件(第一篇)

    编程语言有两类 强类型:如C语言.数据具有其特定的类型,先声明定义后才能使用.数据运算时必须符合类型要求(如不能把字符串类型数据直接与整型数据做算数运算) 弱类型:如shell.数据默认为字符型,不用 ...

  7. SHELL编程概念&变量剖析

    一.shell软件概念和应用场景 1) 学习Linux技术,不是为了学习系统安装.命令操作.用户权限.配置IP.网络管理,学习Linux技术重点:基于Linux系统部署和维护各种应用软件.程序(Apa ...

  8. Shell 编程 (变量和条件测试)

    变量: 1 . 变量声明 直接使用变量 + 赋值 #!/bin/bash NAME='HELLO WORD' echo $NAME 使用 declare 关键字声明 declare(选项)(参数) + ...

  9. Shell编程之变量进阶

    一.变量知识进阶 1.特殊的位置参数变量 实例1:测试$n(n为1...15) [root@codis-178 ~]# cat p.sh echo $1 [root@codis-178 ~]# sh ...

  10. Shell编程——环境变量

    在Shell程序启动时会自动定义一组变量,这组变量就是环境变量,系统中的所有命令都可以使用这些变量参数. 1.如果在父Shell定义环境变量,在子Shell中也能查看到. (1)父Shell与子She ...

随机推荐

  1. delphi之事件

    delphi的事件如上图所示: 图中oncloseup代表的是日期选择下拉框关闭时触发的事件. //事件定义 procedure Ondatechange(Sender: TObject); //事件 ...

  2. Spotlight的连接设置

  3. TP框架常用配置

    <?php// +----------------------------------------------------------------------// | ThinkPHP [ WE ...

  4. 解读ContentResolver和ContentProvider

    转自:http://cthhqu.blog.51cto.com/7598297/1281217 1. ContentProvider的概述 ContentProvider: (Official Def ...

  5. 解决:IntelliJ IDEA 编译错误,提示 Compilation failed: internal java compiler error

    原因可能是项目指定的JDK与当前环境JDK不符合,解决办法:File->Setting->Compiler->Java Compiler, 在相应的module中选择合适的JDK版本 ...

  6. 利用zlib库进行zip解压

    1:到zlib官网上下载zlib,本文下载的是1.2.8的版本. 2:进行./configure,然后make. 3:进入zlib库中的contrib/minizip/路径下make,生成的miniz ...

  7. Hdu 1009 FatMouse' Trade

    FatMouse' Trade Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)T ...

  8. [SublimeText] 安装包管理

    由于各种访问原因,因此记录一下给自己使用,原文地址如下: http://www.bonusbits.com/wiki/HowTo:Setup_Package_Control_for_Sublime_T ...

  9. oracle 基础

    1.order by 排序 select * from dept order by desc; --降序 select ename,empno from emp order by empno asc; ...

  10. hbuilder的使用

    今天在群里看群友提及了hbuilder,下载试了下,发现确实会有些代码敲起来方便多了.也帮助我自己发现uft8和保存的时候选择字符重要,不然乱码,很窝心.