美文网首页
shell系列2-变量

shell系列2-变量

作者: 只是甲 | 来源:发表于2022-04-11 15:13 被阅读0次

一.自定义变量

变量是某个值的名称,引用变量值就称为变量替换
$符号是变量替换符号,如variable是变量名,那么$variable就表示变量的值

Shell脚本变量是无类型的,这与awk变量是一样的

bash Shell不支持浮点型,只支持整型和字符型,默认情况下,Shell脚本变量是字符型的,同时,字符型的变量还具有一个整型值,为0;但是,bash Shell并不要求在定义一个变量时声明其类型

Shell会根据上下文判断出数值型的变量,并进行变量的算术运算和比较等数值操作。判断标准是变量中是否只是包含数字,如果变量只包含数字,则Shell认定该变量是数值型的,反之,Shell认定该变量是字符串

变量赋值有两种格式:

  1. variable=value
  2. ${ variable=value }
    (bash等号的两边不可以有空格)
    (如果值(value)中包含空格,则必须用双引号括起来)

变量名:
变量名只能包括大小写字母(a-z和A-Z)、数字(0-9)、下划杠(_)等符号,并且变量名不能以数字开头,否则视为无效变量名

清除变量的值:
利用unset命令可以清除变量的值,命令格式为:
unset 变量名

只读变量:
readonly可将变量设置为只读,变量一旦设置为只读,任何用户不能对此变量进行重新赋值
variable=value #先对一个变量进行赋值
readonly variable #将variable变量设置为只读

二. 系统变量

常用系统变量:
$HOME、$PWD、$SHELL、$USER等。


image.png

三. 位置参数

位置参数(positional parameters)是一种特殊的Shell变量,用于从命令行向Shell脚本传递参数

$n
$1表示第1个参数、$2表示第2个参数等等,$0脚本的名字,从${10}开始,参数号需要用大括号括起来,如${10}、${11}、${100}……

$#
传递到脚本的参数的数量

$*
传递到脚本的所有参数

$@
传递到脚本的所有参数

$$
脚本运行的进程号

$?
命令的退出状态,0表示没有错误,非0表示有错误

相关文章

  • shell系列2-变量

    一.自定义变量 变量是某个值的名称,引用变量值就称为变量替换$符号是变量替换符号,如variable是变量名,那么...

  • Shell编程系列(三)-- 运算符

    前言 在上一篇文章Shell编程系列(二)-- Bash 变量中, 我们学习了Shell编程中的变量相关的知识。...

  • shell基础在工作中的应用

    shell编程基础:1. shell变量:环境变量、特殊变量、用户自定义变量2. shell输入输出3 shell...

  • Linux Shell:基础知识和Shell变量

    摘要:Linux,Shell 整理Shell内容要点: Shell基础知识 Shell变量的类型 Shell变量赋...

  • Shell常用命令(md格式方便阅读和复制粘贴)

    Shell Shell中的变量 系统变量 自定义变量 自定义变量规则 Shell特殊变量 运算符 条件判断 基本语...

  • shell第11章shell脚本

    什么是shell? Bash shell: 什么是shell脚本? 变量的介绍: 普通变量介绍: 环境变量介绍: ...

  • shell变量详解

    本文转载自Hello,Barry的shell变量详解1 shell变量基础shell变量是一种很“弱”的变量,默认...

  • linux shell中常见的变量含义解释

    linux shell中常见变量含义解释:变量说明:$$Shell本身的PID(ProcessID)$!Shell...

  • Shell特殊变量

    Shell特殊变量:Shell $0, $#, $*, $@, $?, $$和命令行参数 特殊变量列表 变量 含...

  • Shell变量

    Shell 变量 变量的分类 本地变量 全局变量 shell 内置变量 本地变量 本地变量就是:在当前系统的某个环...

网友评论

      本文标题:shell系列2-变量

      本文链接:https://www.haomeiwen.com/subject/pecfjrtx.html