📜  Unix Linux-使用Shell变量(1)

📅  最后修改于: 2023-12-03 14:48:13.315000             🧑  作者: Mango

Unix/Linux-使用Shell变量

在Unix/Linux系统中,Shell变量是一组用来存储数据的字符串。这些变量可以用在命令行命令中,也可以在Shell脚本中使用。

Shell变量的类型

在Unix/Linux Shell中有以下三种类型的变量:

局部变量(Local Variables)

局部变量是定义在shell脚本中的变量。这些变量仅在当前Shell进程中有效。局部变量可以通过使用定义语句来创建。如下所示:

#!/bin/sh

myVar="Hello"
echo $myVar

输出结果:

Hello
环境变量(Environment Variables)

环境变量是全局定义的变量。这些变量可以在Shell脚本中任何地方访问。环境变量在Shell启动时创建,并且由shell进程和所有子进程继承。环境变量可以通过export命令来定义。如下所示:

#!/bin/sh

export myVar="Hello"
echo $myVar

输出结果:

Hello
Shell变量(Shell Variables)

Shell变量是Shell使用的默认变量。这些变量由Shell本身定义,并且可以在Shell的所有命令和子命令中使用。Shell变量以一个美元符号($)开头。例如,$HOME是Shell变量,它包含用户的主目录。Shell变量不能通过export命令定义,因为它们已经被定义。如下所示:

#!/bin/sh

echo $HOME

输出结果:

/home/user
Shell变量的命名规则

Shell变量名必须遵循以下规则:

  • 变量名必须以字母或下划线开头。
  • 变量名可以由字母、数字和下划线组成。
  • 变量名不能以数字开头。
  • 变量名不能包含特殊字符,如空格和标点符号。
  • 变量名应该使用大写字母。
使用Shell变量

在Shell脚本中,可以使用Shell变量来存储数据。例如,可以使用Shell变量来存储用户输入的值,以供稍后使用。如下所示:

#!/bin/sh

echo "What is your name?"
read name
echo "Hello $name, welcome to our program!"

输出结果:

What is your name?
John
Hello John, welcome to our program!
删除Shell变量

可以使用unset命令删除Shell变量。如下所示:

#!/bin/sh

myVar="Hello"
echo $myVar
unset myVar
echo $myVar

输出结果:

Hello

总结

Shell变量是Unix/Linux Shell中用于存储数据的字符串。它们分为三种类型:局部变量、环境变量和Shell变量。Shell变量名必须遵循一些命名规则。这些变量可以在Shell脚本中使用,也可以在Shell命令中使用。可以使用unset命令删除Shell变量。