加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

bash变量

发布时间:2020-12-15 21:38:39 所属栏目:安全 来源:网络整理
导读:变量规则 ==变量赋值时不加$== var=123 ,==使用时加$== $var 或 ${var} 输出变量: echo $var 或 echo ${var} 变量类型默认是字符串 变量与变量内容以一个等号连接,且等号两边不能有空格,如 i=1 变量名只能由英文和数字组成,且开头不能是数字 变量内容有

变量规则

  • ==变量赋值时不加$== var=123,==使用时加$== $var${var}
  • 输出变量:echo $varecho ${var}
  • 变量类型默认是字符串
  • 变量与变量内容以一个等号连接,且等号两边不能有空格,如i=1
  • 变量名只能由英文和数字组成,且开头不能是数字
  • 变量内容有空格可使用双引号或单引号括起来
    • 单引号内特殊字符是纯文本,照常输出
    • 双引号内特殊字符保留原有特性,如var="lang is $LANG",输出echo $varlang is en_US
  • 可用转义特殊字符(enter,$等)
  • 可用反单引号`$(命令)给一串命令作输入 -version=$(uname -r)输出echo $version2.6.18`
  • 追加变量内容,直接在变量后面写上追加内容,如PATH=$PATH:/home/bin
  • 某个变量需要给子进程使用,用export使变量变成环境变量,如export var。因为子进程仅会继承父进程的环境变量
  • 取消某个变量unset var,进入子进程bash
  • 非环境变量当连接断开时会自动清除

特殊变量

$0 当前脚本的文件名
$num num为从1开始的数字,$1是第一个参数,$2是第二个参数,${10}是第十个参数
$# 传入脚本的参数的个数
$* 所有的位置参数(作为单个字符串,如"$1 $2 ...")
[email?protected] 所有的位置参数(每个都作为独立的字符串,如"$1"、"$2" ...)。
$? 当前shell进程中上一个命令的返回值,如果上一个命令成功执行则$?的值为0,否则为其他非零值,常用做if语句条件
$$ 当前shell进程的pid
$! 后台运行的最后一个进程的pid
$- 显示shell使用的当前选项
$_ 之前命令的最后一个参数

从键盘读取内容到变量

read命令

read [-pt] var
# -p 后面接提示符
# -t 后面接等待的秒数

declare/typeset命令,声明变量类型

declare [-aixr] var
# -a 将var定义为数组
# -i 将var定义为整型
# -x 将var变成环境变量
# +x -x的反动作
# -r 设为readonly,该变量不可被更改和重设

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读