|
shell语法
- 概论
- 注释
- 变量
- 默认变量
- 数组
- expr命令
- read命令
- echo命令
- printf命令
- test命令与判断符号[]
- 判断语句
- 循环语句
- 函数
- exit命令
- 文件重定向
- 引入外部脚本
1.shell语法——概论
概论
shell是我们通过命令行与操作系统沟通的语言。
shell脚本可以直接在命令行中执行,也可以将一套逻辑组织成一个文件,方便复用。
AC Terminal中的命令行可以看成是一个“shell脚本在逐行执行”。
注:AC Terminal相当于linux,命令行终端。
Linux中常见的shell脚本有很多种,常见的有:- Bourne Shell(/usr/bin/sh或/bin/sh)
- Bourne Again Shell(/bin/bash)
- C Shell(/usr/bin/csh)
- K Shell(/usr/bin/ksh)
- zsh
- …
复制代码 Linux系统中一般默认使用bash,所以接下来讲解bash中的语法。
文件开头需要写#! /bin/bash,指明bash为脚本解释器。
学习技巧
不要死记硬背,遇到含糊不清的地方,可以在AC Terminal里实际运行一遍。
脚本示例
新建一个test.sh文件,内容如下:- #! /bin/bash
- echo "Hello World!"
复制代码 ###运行方式作为可执行文件- acs@9e0ebfcd82d7:~$ chmod +x test.sh # 使脚本具有可执行权限
- acs@9e0ebfcd82d7:~$ ./test.sh # 当前路径下执行
- Hello World! # 脚本输出
- acs@9e0ebfcd82d7:~$ /home/acs/test.sh # 绝对路径下执行
- Hello World! # 脚本输出
- acs@9e0ebfcd82d7:~$ ~/test.sh # 家目录路径下执行
- Hello World! # 脚本输出
复制代码 用解释器执行- acs@9e0ebfcd82d7:~$ bash test.sh
- Hello World! # 脚本输出
复制代码 2.shell语法——注释
单行注释
每行中#之后的内容均是注释。- # 这是一行注释
- echo 'Hello World' # 这也是注释
复制代码 多行注释
格式:然后执行该脚本:- :<<abc
- 第一行注释
- 第二行注释
- 第三行注释
- abc
- :<<!
- 第一行注释
- 第二行注释
- 第三行注释
- !
复制代码 其它参数相关变量
参数说明$# 代表文件传入的参数个数,如上例中值为4$*由所有参数构成的用空格隔开的字符串, 如上例中值为 $@每个参数分别用双引号括起来的字符串,如上例中值为$$ 脚本当前运行的进程ID$?上一条命令的退出状态(注意不是stdout,而是exit code)。0表示正常退出,其他值表示错误$(command)返回command这条命令的stdout(可嵌套)command返回command这条命令的stdout(不可嵌套)作者:yxc
链接:https://www.acwing.com/blog/content/9688/
来源:AcWing
来源:https://www.cnblogs.com/sunyingee/p/18508915
免责声明:由于采集信息均来自互联网,如果侵犯了您的权益,请联系我们【E-Mail:cb@itdo.tech】 我们会及时删除侵权内容,谢谢合作! |
|