shell Bash变量

一、什么是变量与变量分类

1,什么是变量
  • 变量是计算机内存的单元,其中存放的值可以改变
  • 变量让你能够把程序中准备使用的每一段数据都赋给一个简短、易于记忆的名字,因此他们十分有用
2,变量命名
  • (1)变量名必须以字母或者下划线开头,名字中间只能由字母、数字和下划线组成
  • (2)变量名的长度不得超过255个字符
  • (3)变量名在有效的范围内必须是唯一的
  • (4)在Bash中,变量的默认类型都是字符串型
3,变量按照存储数据分类
  • (1)字符串型
  • (2)整形
  • (3)浮点型
  • (4)日期型
4,变量分类
  • (1)用户自定义变量
  • (2)环境变量:主要保存的是和系统操作环境相关的数据。变量可以自定义,但是对系 统生效的环境变量名和变量作用是固定的
  • (3)位置参数变量:用来向脚本当中传递参数或数据的,变量名不能自定义,变量作用是股东的
  • (4)预定义变量:是Bash中已经定义好的变量,变量名不能自定义,变量作用也是固定的

二、用户自定义变量

1,格式
  • 变量名=变量值
    • ps:
      • =左右不能加空格

      • 变量值有空格,要用“”括起来

2,变量调用
  • $变量名
3,变量的叠加(同一个应用范围内,变量名是唯一的)
		
(1)变量名=“$变量名”叠加值

			x="$x"123		给$x变量叠加123
			
(2)变量名=${变量名}789

			x=${x}789		给$x变量叠加789
4,变量查看
  • set 查看系统所有变量,包括环境变量

    • -u 如果设定此选项,调用为生命变量时会报错(默认无提示)
5,删除变量
  • unset 变量名 变量名前不用加$

三、环境变量

1,环境变量和用户自定义变量的区别
  • 用户自定义变量只在当前的Shell中生效—————————-—局部变量

  • 环境变量在当前Shell和这个Shell的所有子Shell中生效————全局变量

  • pstree 查看进程树

2,设置环境变量
  • (1)export 变量名=变量值

  • (2)变量名=变量值
    export 变量名

3,查看环境变量
  • set 查看全部变量(包括环境变量)

  • env 查看环境变量

4,删除环境变量
  • unset 变量名
5,常用环境变量
	HOSTNAME				主机名
	
	SHELL					当前的shell

	TERM					终端环境

	HISTSIZE				历史命令条数

	SSH_CLIENT				当前操作环境是用ssh链接,这里记录客户端ip

	SSH_TTY					ssh链接的终端时pst/1

	USER					当前登录的用户
6,PATH环境变量

PATH变量:系统查找命令的路径

  • (1)echo $PATH 查看PATH环境变量

  • (2)PATH=“$PATH”:/root/sh 增加PATH变量的值


四、位置参数变量

1,位置参数变量
参数作用
$nn代表数字,$0代表命令本身,$1- 9 代 表 第 一 到 第 九 个 参 数 , 十 以 上 的 参 数 需 要 用 大 括 号 包 含 , 如 9代表第一到第九个参数,十以上的参数需要用大括号包含,如 9{10}
$*这个变量代表命令行中所有的参数,$*把所有的参数看成一个整体(用for循环,只会进行一次)
$@这个变量也代表命令行中所有的参数,不过$@把每个参数区分对待
$#这个变量代表命令行中所有参数的个数

五、预定义变量

项目Value
$?最后一次执行的命令返回的状态。为0,证明上个命令正确执行,非0,证明上个命令执行不正确
$$当前进程的进程号(PID)
$!后台运行的最后一个进程的进程号(PID)
1、read
read    选项	  变量名

		-p			 ‘提示信息’:在等待read输入时,输出提示信息

		-t	 		  秒数,使用此项可以指定等待时间

		-n	 		  字符数,read命令字接收指定的字符数,就会执行

		-s	   		 隐藏输入的数据,适用于机密信息输入(密码)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值