.sh文件语法

ads

大家好,我是宁一。


之前想要出一门新的课程,shell是投票最多的~~


使用 Shell 的熟练程度反映了用户对 Linux 的掌握程度,不管是程序员,还是运维工程师,shell都是必须掌握的技能。




Shell是一个命令行解释器,相当于系统内核外面的壳,是用户操作 Linux 系统的桥梁。



本节课给大家整理了实际工作中,shell的一些常用语法,都会结合实例讲解,大家一起打开终端,跟着我来一起操作吧~


1、打开终端


终端(terminal)就是这么一个小框,我们往里面输入命令,系统也会在这里面显示返回的命令。




大家可以尝试输入echo "Hello World”,看看系统会返回什么。echo是用来输出字符串的,下面我们会经常用到。


终端打开方式:


Linux:组合键ctrl+alt+T

Mac:启动台 搜索 终端

Windows:开始 搜索  cmd


当我们打开终端时,操作系统就会将终端和shell关联起来,我们在终端中输入命令,shell就负责解释命令。


2、Shell 变量


定义变量不加$美元符号,引用变量的时候要加$美元符号。下方示例中的代码直接在终端输入就可以。


注意:


定义变量时,等号两边不能有空格,这个一定要特别注意,非常容易写错。变量命名只能使用英文字母,数字和下划线。首个字符不能以数字开头。


# 定义变量name,定义成功后什么也不会返回。注意等号旁边不要有空格,否则会报错。name="ningyi"# 引用变量,前面加$美元符号。echo "my name is ${name}"    # 输出 my name is ningyi# 在字符串中引用变量必须用双引号,单引号变量不会被解析的echo 'my name is ${name}'    # 输出 my name is ${name}


补充:如果行是以 # 开头的,那这行就是注释,会被解释器忽略的。


3、Shell 字符串


在Shell中,字符串有很多处理方法,比如截取、替换、长度等,来看看一些常用的方法。

# 定义变量stringstring="abcdea"# 取字符串长度,变量前面加#echo ${#string}   # 输出 6# 截取字符串,从第4个字符开始截取,字符串索引由0开始编号echo ${string:3}   # 输出 dea# 从第4个字符开始截取1个字符echo ${string:3:1}   # 输出 d# 替换字符,替换第一个a为fecho ${string/a/f}   # 输出 fbcdea# 替换所有a为fecho ${string//a/f}   # 输出 fbcdef


4、Shell 数组


Shell数组、字符串的定义和引用非常相似,区别是数组中可以存放多个值。


Shell 数组用括号来表示,元素用"空格"符号分割开。

# 定义数组arrayarray=(a b c d)#引用数组,前面也要加$符号,元素的下标从 0 开始。echo "第一个元素: ${array[0]}"   # 输出 第一个元素:aecho "第三个元素:${array[2]}"   # 输出 第三个元素:cecho "所有元素: ${array[*]}"   # 输出 所有元素: a b c d# 获取数组长度,数组前面加#echo "${#array[*]}"   # 输出 4


5、Shell 运算符


实际业务中经常会计算各种数据,下面是我们常用的运算符,注意“乘”的写法。




可以直接在expr关键词后面计算。

# 运算符前后要加空格,否则会被识别为字符串expr 1 + 2   # 输出 3# 运算符前后没有加空格,就会直接输出为字符串expr 1+2   # 输出 1+2# 计算(2+3)*4expr `expr 2 + 3` * 4   # 输出 20


计算稍微复杂的表法式,用expr关键词就不太适用了,我们也可以这样写:变量=$[表达式]。


注意这种写法,一定要定义为变量。


还要注意定义变量时,等号前后不要有空格。表法式放在$[]中,对空格就没有要求了,可加可不加。

# 计算(2+3)*4a=$[(2+3)*4]# 输出结果echo $a   # 输出 20


6、Shell 脚本


Shell 脚本就是一个以.sh为后缀的文件。


以后我们将要学习if条件、for循环等流程控制语句,这种比较复杂的语法,我们通常会写在Shell 脚本中。


(1)创建脚本


我们用touch命令来创建文件。先来创建一个名为name.sh 的Shell 脚本文件,直接在终端输入下面代码。

touch name.sh


(2)编辑脚本


创建完成后,会在当前目录下看到一个名为name.sh的文件,我们再回到终端,用vi命令打开这个文件。

vi name.sh


打开文件后,输入i,进入编辑模式,再输入下面前两行内容,完成后,按esc键退出编辑模式,最后输入:wq退出文件。




(3)执行脚本

bash name.sh   # 输出 my name is ningyi


点击关注,编程入门不迷路~



往期推荐

吐血整理!2022年SQL大厂高频实战面试题

程序员做饭指南,GitHub教程来了

30分钟开发并上线云开发小程序



在看不好意思,那就点个赞吧

最后编辑于:2024/1/18 拔丝英语网

admin-avatar

英语作文代写、国外视频下载

高质量学习资料分享

admin@buzzrecipe.com