本文已参与「新人创作礼」活动,一起开启掘金创作之路
携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第1天,点击查看活动详情 >>
shell简介
- Shell 是指一种应用程序,这个应用程序提供了一个界面,用户通过这个界面访问操作系统内核的服务。
- Shell 是一个用 C 语言编写的程序,它是用户使用 Linux 的桥梁
- shell 既是一种命令语言,又是一种程序设计语言。
- 要有一个能编写代码的文本编辑器和一个能解释执行的脚本解释器
- Bash 在日常工作中被广泛使用。同时,Bash 也是大多数Linux 系统默认的 Shell。
- #!/bin/sh**,它同样也可以改为 **#!/bin/bash。
- export:定义全局变量 unset:删除
- 变量命名要大写哦 *使用 [] 注意左右加空格
-
[]内不能嵌套(),可以嵌套[]
-
$[ val + 1 ]是变量加 1 的常用方法
-
[]在测试或者计算中里面的内容最好都加空格
-
- 单引号和双引号差不多,单引号更加严格,双引号可以嵌套单引号
-
- 一定要注意语句的格式,例如缩进
shell变量
- 定义变量时,变量名不加美元符号
- 命名只能使用英文字母,数字和下划线,首个字符不能以数字开头
- 中间不能有空格,可以使用下划线(_)。
- 不能使用标点符号。
- 不能使用bash里的关键字(可用help命令查看保留关键字)。
使用变量
使用一个定义过的变量,只要在变量名前面加美元符号即可,
如:your_name="qinjx" echo $your_name echo ${your_name}
推荐给所有变量加上花括号,这是个好的编程习惯
只读变量
使用 readonly 命令可以将变量定义为只读变量,只读变量的值不能被改变。
下面的例子尝试更改只读变量,结果报错:
#!/bin/bash name="hello" readonly name namw="nihaoya"
运行脚本,结果如下:
/bin/sh: NAME: This variable is read only.
删除变量
用 unset 命令可以删除变量。
语法: unset variable_name
变量被删除后不能再次使用。unset 命令不能删除只读变量。
#!/bin/bash name="hello" unset name echo ${name}
运行脚本,结果如下:
/bin/sh: NAME: This variable is read only.
shell注释
-
以 # 开头的行就是注释,会被解释器忽略。
-
多行注释 多行注释还可以使用以下格式:
:<<EOF 注释内容... EOF EOF 也可以使用其他符号:
:<<' 注释内容... '
:<<! 注释内容... !
shell运算符
1、Shell 和其他编程语言一样,支持多种运算符,包括:
算数运算符
关系运算符
布尔运算符
字符串运算符
文件测试运算符
2、bash不支持简单的数学运算,但是可以通过其他命令来实现。
3、expr 是一款表达式计算工具,使用它能完成表达式的求值操作。
4、条件表达式要放在方括号之间,并且要有空格
5、乘号(*)前边必须加反斜杠()才能实现乘法运算;
6、#代表输出长度
7、完整的表达式要被 包含