Linux——环境变量&flags

Setting Variables

我们在终端中输入命令,然后命令被执行了,继而产生结果。这一切交互行为都发生在一个叫做bash的shell中。shell是一种用来进行访问和控制计算机的方法。Command-line shells有一个文本界面提供输入命令以及结果显示。graphical shells允许你点击按钮移动鼠标等等。目前有很多unix shells,但是Bash是最受欢迎的一种,并且是linux种默认的shell。

Bash本质上是一个能让我们运行其他程序的程序。为此,Bash实现了一个命令语言。 bash是borne again shell的缩写,它是shell的一种,Linux上默认采用的是bash。当你在命令行中敲入bash命令时,相当于进入bash环境,如果本身就是bash环境,那么就是进入一个子bash环境(相当于开了一个子进程)。

shell是一个交互性命令解释器。shell独立于操作系统,这种设计让用户可以灵活选择适合自己的shell。shell让你在命令行键入命令,经过shell解释后传送给操作系统(内核)执行。shell是一个命令处理器(command processor)——是一个读入并解释你输入的命令的程序。除了是一个命令中断器以外,shell还是一个程序设计语言。你可以编写shell可以解释的程序(被称为源程序),这些源程序可以包含shell程序设计命令等等。shell除了解释命令以外,还有其他工作,它也可以配置和编程。shell拥有自己的语言允许用户编写程序并以一种复杂方式运行。shell编程语言具有许多常用的编程语言的特征,例如:循环和控制结构等。用户可以生成像其他应用程序一样复杂的shell程序。

以下是shell功能的一个汇总:

  • 查找命令的位置并且执行相关联的程序;
  • 为shell变量赋新值;
  • 执行命令替代;
  • 处理 I/O重定向和管道功能;
  • 提供一个解释性的编程语言界面,包括tests、branches和loops等语句。
  • 既然Bash是一种命令语言,那么它也可以像其他语言一样设置变量,Bash的变量名是全部大写的,包含字符,数字和下划线。你可以将任意类型的数据赋给Bash变量,比如:
OS=linux
OPERATING_SYSTEM="linux"
  • 上面这两个变量的值一样,因为在Bash中使用字符串时” “是可选可不选的。Bash对空格很敏感的,如果字符串之间有空格,就需要用引号括起来,否则会报错。
# 这是错的
ANIMAL=Shark with a laser beam on its head 
# 这是对的
ANIMAL="Shark with a laser beam on its head"
# 这是错的,因为=前后不允许有多的空格,谨记
ANIMAL = "Shark with a laser beam on its head"

Accessing Variables

  • 与python一样,当你创建了一个变量后,可以访问它。在bash中你需要在变量前面加一个$来访问它。比如

你可能感兴趣的:(Linux)