Linux之Shell脚本编程——Shell变量 (2)

变量

1. 什么是变量

  • 用一个固定的字符串,替代更多更复杂的内容
  • 存放在脚本中经常用到的内容 ip 时间
  • 变量的本质是内存中的区域 变量名称区域的地址

用一个特定得字符去表示不固定得内容 脚本中可以去调用另一个脚本得公共得变量

2. 变量的命名规则

  • 不能以数字开头
  • 看见变量 指定做什么的?
  • num=40
  • 变量表示作用: name=ncs age=18

变量的类型

1. 自定义变量

定义变量: 变量名=变量值 变量名必须以字母或下划线开头,区分大小写
ip1=192.168.2.115
引用变量: $变量名 或 ${变量名}
查看变量: echo $变量名 set(所有变量:包括自定义变量和环境变量)
取消变量: unset 变量名
作用范围: 仅在当前 shell 中有效

2. 环境变量

定义环境变量: 方法一 export back_dir2=/home/backup
方法二 export back_dir1 将自定义变量转换成环境变量
引用环境变量: $变量名 或 ${变量名}
查看环境变量: echo $变量名 env 例如 env |grep back_dir2
取消环境变量: unset 变量名
变量作用范围: 在当前 shell 和子 shell 有效
=======================================================
C 语言 局部变量 vs 全局变量
SHELL 自定义变量 vs 环境变量
=======================================================

3. 位置变量

$1 $2 $3 $4 $5 $6 $7 $8 $9 ${10}

4. 预定义变量

$0 脚本名
$* 所有的参数
$@ 所有的参数
$# 参数的个数
$$ 当前进程的 PID
$! 上一个后台进程的 PID
$? 上一个命令的返回值 0 表示成功

4.1 实例1

vim test.sh
echo "第 2 个位置参数是$2"
echo "第 1 个位置参数是$1"
echo "第 4 个位置参数是$4"
echo "所有参数是: $*"
echo "所有参数是: $@"
echo "参数的个数是: $#"
echo "当前进程的 PID 是: $$"
echo '$1='$1
echo '$2='$2
echo '$3='$3
echo '$*='$*
echo '$@='$@
echo '$#='$#
echo '$$='$$
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值