带你走进shell(1)

什么是shell

shell是壳,壳对应的命令将该数据取出来,壳的目的是去操作核,就好比拿出手机想要打电话不能直接操作电路板一样,我们点击打电话的按键,就可以帮助我们完成打电话的功能。即装上壳子,使用专业的命令,就可以操纵内核。

介于系统内核与用户之间,负责解释命令行,Shell (壳程序)是一个特殊的应用程序,它介于操作系统内核与用户之间,充当了一个“命令解释器"的角色,负责接收用户输入的操作指令(命令)并进行解释,将需要执行的操作传递给内核执行,并输出执行结果。

当我们将程序语写在文件中,我们指向文件,读取其中的代码,这个程序文件就叫做shell脚本

脚本的第一行

第一行的东西叫shellbang, 脚本申明(解释器) :若第一行为“#!/bin/bash", 表示此行以下的代码语句是通过/bin/bash程序来解释执行,#!/bin/bash为默认解释器。还有其它类型的解释器,比如#!/usr/bin/python、#!/usr/bin/ expect(告诉电脑用哪个解释器去读)

注释信息:以“#”开头的语句表示为注释信息,被注释的语句在运行脚本时不会被执行。(shell脚本文件的第一行是个例外,#后面的感叹号会告诉shell用哪个shell来运行脚本) 可执行语句:比如echo命令,用于输出" "之间的字符串。

执行shell的形式

shell脚本的方式有三种:sh 文件;source 文件;绝对路径

脚本文件路径(绝对路径和相对路径),要求文件必须有 x(可执行)权限 chmod +x  /root/first_demo.sh 指定绝对路径:  /root/first_demo.sh 指定相对路径:  ./first_demo.sh

sh脚本文件路径,不要求文件必须有 x (可执行)权限 sh first_demo.sh

source脚本文件路径,不要求文件必须有 x (可执行)权限(和第二的不同在于变量的作用域) source first_demo.sh  或者.source first_demo.sh

shell语法

shell语法(先学变量(变量里面有标识符和数据类型,再学运算符(让多个变量产生关系),在学习逻辑语句(顺序,分支,循环),再学习方法或函数,将实现某一功能的代码封装在一起)),这也是大部分语言学习的通用路径。

变量: 定义一个新的变量 变量名以字母数字或下划线开头,区分大小写,建议全大写;变量名=变量值;中间不能有空格,可以有下划线;不能使用标点;

查看变量的值 echo $变量名 • 双引号:允许通过$符号引用其他变量值

• 单引号:禁止引用其他变量值,$视为普通字符 #表示长度

数组

 shell数组:是若干数据的集合,其中的每一份数据都称为元素 shell不限制数组的大小,理论上可以存放无限量的数据,shell数组元素的下标也是从0开始计数 获取数组中的元素要使用下标[ ],下标可以是一个整数,也可以是一个结果为整数的表达式;下标必须大于等于0

Bash shell只支持一维数组,不支持多维数组

数组的定义 shell中,用小括号( )来表示数组,数组元素之间用空格来分隔 array1=(1 2 3 4 5)

echo ${array1[*]}        #输出定义数组的所有元素

echo ${array1[@]}        #输出定义数组的所有元素

echo ${array1[0]}        #输出定义数组的第一个元素

echo ${array1[1]}       #输出定义数组的第二个元素

使用双括号进行算数运算         使用双括号可以进行算数运算,可以写类C语言的运算表达式         a++ 或者 b-- 或者 a+=1 或者 a<b 或者 a != b 4、

注意事项:      

  双括号结构中,变量名引用可以加$,也可以不加    

  运算符前后可以有空格,也可以没有        

可以用于if、for、while等循环控制结构中        

多个运算符使用逗号分隔

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值