Linux运维中实用的Shell变量

一、特殊变量

1、$#: 命令行参数的个数。

2、$*: 命令行所有参数的内容,在全部参数作为一个字符串处理。

3、$@: 命令行所有参数的内容,在每个参数都作为一个字符串处理。

4、$0: 当前脚本名。

5、$?: 上一条命令的返回值。

6、$$: 当前脚本的进程号。

二、位置参数变量

1、$1, $2, ……$n: 命令行参数1、2、……n。

2、$0:当前脚本名。

三、环境变量

1、$HOME: 当前用户的家目录的完整路径。

2、$PATH: 一组用 ‘:’ 分隔开的目录,shell 在这些目录中查找可执行文件

$ echo $HOME
/home/user

$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

四、特殊字符

特殊字符,用来对字符串或命令行参数进行操作。

1、$: 取变量值的内容,如:$variable。

2、#:取字符或参数的长度,如:${#variable}。

3、%:从后向前删除匹配的最小值字符,如:${variable%/*}。

4、%%:从后向前删除匹配的最大值字符,如:${variable%%/*}。

5、/:替换字符串匹配的字符,如:${variable/old/new}。

6、//:替换字符串匹配的所有字符,如:${variable//old/new}。

五、共享变量

1、export: 用于将局部变量提升为全局变量。

#!/bin/bash
function func {
    local var1="hello"
    echo "var1 is ${var1}"
    echo "var2 is ${var2}"
}

export var2="world"
func

2、source: 执行脚本,使共享变量在当前 Shell 中生效。

#!/bin/bash
var1="hello"
export var2="world"
echo "var1 is ${var1}"
echo "var2 is ${var2}"

source test.sh
echo "var2 is ${var2}"

六、数组

数组能够存储多个值,并通过下标索引来访问数组元素。

1、定义数组

myArray=(one two three four five)

2、访问数组

echo ${myArray[0]}
echo ${myArray[*]}
echo ${#myArray[*]}

3、向数组中添加元素

myArray[5]="six"
myArray+=("seven")

4、数组的循环遍历

for var in ${myArray[*]}
do
    echo ${var}
done

七、用户自定义变量

1、set: 设置变量。

2、read: 读取用户输入的内容到变量中。

read -t 5 -p "Enter name: " name

八、数组变量解释器(declare)

declare命令可以设置变量的属性,包括数组元素类型、只读属性、可重复赋值、调试属性等。

1、定义只读变量

readonly myVar="hello"

2、定义数组元素类型

declare -a myArray # 数字索引数组
declare -A myArray # 带关联键值的数组

3、定义整数变量

declare -i myInt=10

4、定义调试变量

declare -x myDebugVar="debug info"

九、总结

Shell变量在Linux运维中起着不可替代的作用,掌握了Shell变量的使用方法,对运维人员来说是非常重要的技能。上述涉及到的Shell变量是我们经常使用到的必备技能,灵活掌握这些变量的使用方法,可以有效地提高我们的工作效率。

原创文章,作者:小蓝,如若转载,请注明出处:https://www.506064.com/n/193505.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝的头像小蓝
上一篇 2024-12-01 15:02
下一篇 2024-12-01 15:02

相关推荐

  • int类型变量的细节与注意事项

    本文将从 int 类型变量的定义、声明、初始化、范围、运算和类型转换等方面,对 int 类型变量进行详细阐述和讲解,帮助读者更好地掌握和应用 int 变量。 一、定义与声明 int…

    编程 2025-04-29
  • Python input参数变量用法介绍

    本文将从多个方面对Python input括号里参数变量进行阐述与详解,并提供相应的代码示例。 一、基本介绍 Python input()函数用于获取用户输入。当程序运行到inpu…

    编程 2025-04-29
  • Shell脚本与Python脚本的区别

    本文将从多个方面对Shell脚本与Python脚本的区别做详细的阐述。 一、语法差异 Shell脚本和Python脚本的语法存在明显差异。 Shell脚本是一种基于字符命令行的语言…

    编程 2025-04-29
  • Python匿名变量的使用方法

    Python中的匿名变量是指使用“_”来代替变量名的特殊变量。这篇文章将从多个方面介绍匿名变量的使用方法。 一、作为占位符 匿名变量通常用作占位符,用于代替一个不需要使用的变量。例…

    编程 2025-04-29
  • Python变量在内存中的存储

    该文章将从多个方面对Python变量在内存中的存储进行详细阐述,包括变量的声明和赋值、变量的引用和指向、内存地址的变化、内存管理机制等。 一、声明和赋值 在Python中,变量声明…

    编程 2025-04-29
  • Python变量类型用法介绍

    Python是一种解释型编程语言,它提供了丰富的数据类型,包括数字、字符串、列表、元组、集合、字典等。Python变量类型的定义是Python程序开发的基础,本文将从以下几个方面对…

    编程 2025-04-28
  • Python print输出变量

    Python是一种脚本语言,语法简单易懂,目前被广泛应用于数据处理、人工智能、web开发、游戏开发等领域。其中print函数是Python中最常用的函数之一,用于将变量输出到控制台…

    编程 2025-04-28
  • Python定义变量

    Python是一门高级编程语言,变量是Python编程中非常重要的一个概念。Python的变量定义方式非常简单,可以在程序中随时定义一个变量来存储数据,这方便了整个程序的逻辑编写,…

    编程 2025-04-28
  • Python中如何定义一个变量

    Python是一种高级编程语言,使用它您可以轻松地定义和操作变量。Python中的变量属于动态类型变量,因此不需要在定义变量时指定其类型,而是在变量分配之前自动确定变量的数据类型。…

    编程 2025-04-28
  • Python每次运行变量加一:实现计数器功能

    Python编程语言中,每次执行程序都需要定义变量,而在实际开发中常常需要对变量进行计数或者累加操作,这时就需要了解如何在Python中实现计数器功能。本文将从以下几个方面详细讲解…

    编程 2025-04-28

发表回复

登录后才能评论