微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

24 Linux——shell基础之概述与脚本执行方式

shell概述

在这里插入图片描述

shell最主要的工作就是把我们敲入的命令,比如ls翻译成内核可以识别的二进制代码(0101这样的机器语言),然后内核才可以根据我们的要求调用硬件完成操作。

在这里插入图片描述

在这里插入图片描述

shell就是上图这个交互界面,

在这里插入图片描述

上图的解释执行脚本语言的意思是不需要先单独进行编译,命令在执行过程中自动进行编译。写完的脚本一回车就可以见到结果

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

打开上图的文件就可以看到Linux中支持的shell,看下图

在这里插入图片描述

主流shell是bash

shell可以切换,如下图从bash切换到sh又切换回来。

现在学的是Bshell系列的bash

脚本执行方式

在这里插入图片描述

在这里插入图片描述

如上图第一个Hello World! 提示错误的原因是在Linux中有特殊作用,要去掉它的特殊作用要用单引号

如果内容中有空格的话必须要用单引号或者双引号括起来

在这里插入图片描述


\t输出Tab键,也就是一大段空格

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


如下图\e[1代表开启颜色输出\e[0m代表结束颜色输出,这是标准用法,要输出颜色都得这样

在这里插入图片描述

在这里插入图片描述

Linux不区分扩展名,但如果像上面一样把脚本的后缀名写成.sh,作用是告诉系统我写的东西是bash脚本。如果vim编译器它会用颜色来帮助你。建议把所有的脚本都写成.sh。当然非不写也行。

第二行的#!/bin/Bash不是注释,是标识,标称以下写的程序是shell脚本,如果没写这句,shell脚本的执行并不影响,但是可能会出现一些更加复杂的错,比如说在shell脚本中嵌套其他语句。所以所有shell脚本都不能省略这句话

必须要写好注释

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述


上图是bash不是Bash

上图为执行的两种方法,第一个绝对路径和相对路径都行,如下图

bash hello.sh来执行脚本的话,脚本连执行权限都不需要赋予。因为它的意思是通过shell来解释脚本,推荐还是上图第一种赋予权限执行

在这里插入图片描述

Linux中所有的执行文件,不管是shell脚本还是二进制的执行命令,要想运行都必须用绝对路径或相对路径让系统找得着才可以执行,像ls这样的其实是简化操作,后面环境变量配置再讲

在这里插入图片描述

如上图,cat -A看到文件所有内容包括隐藏内容$是回车的意思

Windows回车符是下图白线这样的

在这里插入图片描述


如果从Windows下的脚本一定要转换为Linux格式,不然格式不匹配,用dos2unix命令转换如下图

在这里插入图片描述

所有当然也有unix2dos命令

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐