美文网首页
Linux第二天(Shell)

Linux第二天(Shell)

作者: 宝宝跟你们拼啦 | 来源:发表于2019-08-07 23:16 被阅读0次

1、什么是Shell脚本?

    shell就是指一种应用程序,这个应用程序提供了一个界面,用户通过这      个界面访问操作系统内核的服务

2、第一个Shell脚本

    在某个目录下创建一个文件(Shell脚本通常以sh结尾)demo.sh

    输入命令“vim demo.sh”进入编辑模式,(#!是一个约定的标记,它告诉系统这个脚本需要什么解释器                                                             来执行,即使用哪一种 Shell、、echo 命令用于向窗口输出文本)

    回到上一层目录,执行命令“chmod +x ./demo.sh” ----》./demo.sh---->输出内部的内容

3、Shell变量 

    Shell定义变量时,变量名不能加美元符号($),

    变量定义规则:

        命名只能使用英文字母,数字和下划线,首个字符不能以数字开头。

        中间不能有空格,可以使用下划线(_)。

        不能使用标点符号。

        不能使用bash里的关键字(可用help命令查看保留关键字)。

    使用变量:

        使用一个定义过的变量,只要在变量名前面加$即可

   只读变量:

       使用readonly命令可以将变量定义为只读变量,只读变量的值不能改变,报错,改不了

删除变量:

    使用unset命令可以删除变量 。unset 命令不能删除只读变量。

4、Shell字符串

Shell中字符串可用双引号也可以用单引号

单引号:str='hello world'

双引号:str="hello world"

区别:单引号限制:

     1、单引号里的任何字符都会原样输出,单引号字符串中的变量是无效的;

     2、单引号字串中不能出现单独一个的单引号(对单引号使用转义符后也不行),但可成对出现,作为字符串 拼接使用。    

        双引号优点:双引号里可以有变量、、、双引号里可以出现转义字符

5、Shell传递参数

    我们可以在执行 Shell 脚本时,向脚本传递参数,脚本内获取参数的格式为:$nn 代表一个数字,1 为执行          脚本的第一个参数,2 为执行脚本的第二个参数,以此类推……

    sehll传递参数里面的特殊字符

$* 与 $@ 区别:

    相同点:都是引用所有参数。

    不同点:只有在双引号中体现出来。假设在脚本运行时写了三个参数 1、2、3,,则 " * " 等价于 "1 2 3"(传                    递了一个参数),而 "@" 等价于 "1" "2" "3"(传递了三个参数)。

6、Shell数组

    数组中可以存放多个值。Bash Shell 只支持一维数组(不支持多维数组),初始化时不需要定义数组大小

      与大部分编程语言类似,数组元素的下标由0开始。Shell 数组用括号来表示,元素用"空格"符号分割开,语        法格式如下:array_name=(value1 ... valuen)

定义数组:my_array=(val1 val2 。。 valn)

也可以使用下标定义数组:my_array[0]=val1        my_array[1]=val2

读取数组元素元素:${my_array[index]}

获取数组中的所有元素:${my_array[*]}或者${my_array[@]}

获取数组的长度:${#my_array[*]}或者${#my_array[@]}

数组中可以存放多个值。Bash Shell 只支持一维数组(不支持多维数组),初始化时不需要定义数组大小(与 PHP 类似)。

与大部分编程语言类似,数组元素的下标由0开始。

Shell 数组用括号来表示,元素用"空格"符号分割开,语法格式如下:

my_array=(arr1 arr2 arr3 .... arrn)

7、Shell运算符

算数运算符:不是单引号,是Esc下的案件,2 + 2之间一定要有空格  val=不能有空格

关系运算符:关系运算符只支持数字,不支持字符串,除非字符串的值是数字

布尔运算符:

逻辑运算符:

字符串运算符:

8/

8、Shell流程控制    

    if...else....

    if condition

    then 

         command1

          command2

    ...    commandN

    else

        command

fi

相关文章

  • Shell入门笔记

    Shell脚本:Linux Shell脚本学习指南菜鸟教程 - Shell教程Linux入门 - Shell脚本是...

  • shell基础

    Linux学习 一、shell介绍 Linux shell基础 什么是shell shell是一个命令解释器,提供...

  • Linux下的shell

    Shell 和 Linux shell程序是包含若干行shell或linux命令的文件。linux命令语句只能一行...

  • linux shell脚本攻略笔记

    LINUX SHELL脚本攻略笔记[速查] linux shell脚本攻略笔记

  • Shell学习

    Linux Shell基础教程 (一) (二) Linux Shell简明教程(推荐) (一) (二) Linux...

  • Shell 脚本编程简介

    Shell菜鸟教程[https://www.runoob.com/linux/linux-shell.html] ...

  • shell 教程学习推荐地址

    [shell 教程学习推荐地址:] http://www.runoob.com/linux/linux-shell...

  • bash shell学习

    Shell 传递参数 参考链接:https://www.runoob.com/linux/linux-shell-...

  • shell脚本基础应用

    Shell 教程[https://www.runoob.com/linux/linux-shell.html]li...

  • Shell-基础教程-变量

    参考教程链接 http://www.runoob.com/linux/linux-shell.html Shell...

网友评论

      本文标题:Linux第二天(Shell)

      本文链接:https://www.haomeiwen.com/subject/iwyndctx.html