AI智能
改变未来

shell编程及常用命令


一、准备工作

1、新建一个.sh 测试脚本并进入 进行编辑
输入命令: vi test.sh

2、进入编辑后,先输入一行命令:#!/bin/bash
#! 告诉系统其后路径所指定的程序即是解释此脚本文件的 Shell 程序

然后逻辑编写

二、shell脚本基本命令

1、输出
echo 空格 输出的内容

然后给脚本文件赋予执行的权限

执行

2、变量
定义变量:

注意事项:
1、变量名和等号之间不能有空格
2、命名只能使用英文字母,数字和下划线,首个字符不能以数字开头
3、中间不能有空格,可以使用下划线 _
4、不能使用标点符号
5、不能使用bash里的关键字 (输入help命令查看)

使用变量:
在定义过的变量前加上$符号即可

便可在控制台输出

3、变量类型
字符串:
定义字符串时可以用单引号,也可以用双引号,也可以不用引号

单引号:
单引号里的任何字符都会原样输出,单引号字符串中的变量是无效的
双引号:
1、双引号里可以有变量
2、双引号里可以出现转义字符

运算符:
= 检测两个字符串是否相等,相等返回 true
!= 检测两个字符串是否相等,不相等返回 true
-z 检测字符串长度是否为0,为0返回 true
-n 检测字符串长度是否不为 0,不为 0 返回 true
$ 检测字符串是否为空,不为空返回 true

数值型
算术运算符:
+,-,*,/ 对应了:加,减,乘,除
%,=,==,!= 对应了:取余,赋值,相等判断,不等判断
简单的加法求和:

结果为:30
加减乘除都可以按这个来做
注: 原生bash不支持简单的数学运算,但是可以通过其他命令来实现,例如 awk 和 expr。

expr 是一款表达式计算工具,使用它能完成表达式的求值操作

数值型关系运算符:
-eq 检测两个数是否相等,相等返回 true
-ne 检测两个数是否不相等,不相等返回 true
-ge 检测左边的数是否大于右边的,如果是,则返回 true
-lt 检测左边的数是否小于右边的,如果是,则返回 true
-le 检测左边的数是否大于等于右边的,如果是,则返回 true
-gt 检测左边的数是否小于等于右边的,如果是,则返回 true

4、注释:
在语句头部 添加 #

5、shell的流程控制语句
if语句:

if [条件]then//逻辑代码内容fi  //结束标志,不能丢掉

if-else语句:

if [条件]then//逻辑代码快else [条件]//逻辑代码快fi

if-esle-if语句:

if [条件]then//逻辑代码片elif [条件]then//逻辑代码片else [条件]//逻辑代码片fi

for循环:

for((条件))do//逻辑代码done  //与前面的do相对应  不能丢掉

增强for遍历循环:

for a in n1,n2,n3....do//逻辑代码//echo \"输出: $a\"done

while循环:

a=1while  [a -le 5]do//逻辑代码let  \"a++\"done

case判断:

case 变量 in:值1)//逻辑代码;;   //相当于break中断值2)逻辑代码;;*)//全部不满足时执行的语句esac

6、break和continue
break命令 :允许跳出所有循环(终止执行后面的所有循环)
continue命令:跳出当前循环,并执行下一轮循环

更详细的Linux教程
链接: https://www.runoob.com/linux/linux-tutorial.html.

赞(0) 打赏
未经允许不得转载:爱站程序员基地 » shell编程及常用命令