linux shell有哪些 类型

linux shell有哪些 类型,第1张

2.4脚本语言的种类

2.4.1 Shell脚本语言的种类

Shell脚本语言是弱类型语言(无需定义变量的类型就可使用),在Unix/Linux中主要有两大类Shell,一类是Bourne shell,另一类是C shell。

1. Bourne shell

Bourne shell又包括Bourne shell (sh)、Korn shell (ksh)、Bourne Again Shell(bash)三种类型。

Bourne shell (sh)由AT&T的Steve Bourne开发,是标准的UNIX Shell,很多UNIX系统都配有sh。

Korn shell (ksh)由David Korn开发,是Bourne shell(sh)的超集合,并且添加了csh引入的新功能,是目前很多UNIX系统标准配置的Shell,在这些系统上的/bin/sh往往是指向/bin/ksh的符号链接。

Bourne Again Shell即bash由GNU项目组开发,主要目标是与POSIX标准保持一致,同时兼顾对sh的兼容,bash从csh和ksh借鉴了很多功能,是各种Linux发行版默认配置的Shell,在Linux系统上的/bin/sh往往是指向/bin/bash的符号链接。虽然如此,bash和sh还是有很多的不同,一方面,bash扩展了一些命令和参数,另一方面,bash并不完全和sh兼容,它们有些行为并不一致,但大多数企业运维的情况下区别不大,特殊场景可以使用bash替代sh。

2. C shell

C shell又包括csh、tcsh两种类型。

csh由Berkeley大学开发,随BSD UNIX发布,它的流程控制语句很像C语言,支持很多Bourne Shell所不支持的功能,例如:作业控制、别名、系统算术、命令历史、命令行编辑等。

tcsh是csh的增强版,加入了命令补全等功能,在FreeBSD、Mac OS X等系统上替代了csh。

以上介绍的这些Shell中,较为通用的是标准的Bourne shell (sh)和C shell (csh)。其中Bourne shell (sh)已经被Bourne Again shell (bash) 取代。

可通过以下命令查看CentOS7系统的Shell支持情况。

[root@oldboy ~]# cat /etc/shells

/bin/sh #<==这是Linux里常用的Shell,指向/bin/bash。

/bin/bash#<==这是Linux里常用的Shell,也是默认使用的Shell。

/usr/bin/sh

/usr/bin/bash

Linux系统中的主流Shell是bash,bash是由Bourne Shell(sh)发展而来的,但bash还包含了csh和ksh的特色,但大多数脚本都可以不加修改地在sh上运行,如果你使用sh后发现结果和预期有差异,那么可以尝试使用bash替代sh。

内容来源:《跟老男孩学linux运维:Shell高级编程实战》第02章_Shell脚本初步入门

建议先看卧龙小三的

《实战LINUX+SHELL编程与服务器管理》

对shell编程有一定基础和了解,然后再看

《Bash shell高级编程指南》

这些资料网上都可以免费搜索到

云计算是基于互联网的相关服务的增加、使用和交付模式,通常涉及通过互联网来提供动态易扩展且经常是虚拟化的资源。云是网络、互联网的一种比喻说法。过去在图中往往用云来表示电信网,后来也用来表示互联网和底层基础设施的抽象。因此,云计算甚至可以让你体验每秒10万亿次的运算能力,拥有这么强大的计算能力可以模拟核爆炸、预测气候变化和市场发展趋势。用户通过电脑、笔记本、手机等方式接入数据中心,按自己的需求进行运算。

目前我们的云计算的课程为由浅入深、循序渐进的完整课程体系,包括结合Linux的网络基础实战、Linux系统配置及服务深度解析、Shell脚本自动化运维项目开发、开源数据库MySQL DBA架构及优化、主流Web 服务器Nginx架构优化、大型网站高并发项目LVS实战方案、高可用集群技术、分布式存储技术Ceph、安全防御技术、性能优化方案、Python自动化运维开发技术、私有云平台技术KVM 、Openstack、容器技术Docker等。

云计算学习课程大纲如下:

1. Linux云计算网络管理实战

2. Linux系统管理及服务配置实战

3. Linux Shell自动化运维编程实战

4. 开源数据库SQL/NOSQL运维实战

5. 大型网站高并发架构及自动化运维项目

6. 网站安全渗透测试及性能调优项目实战

7. 公有云运维技术项目实战

8. 企业私有云架构及运维实战

9. Python自动化运维开发基础

10. Python自动化运维开发项目实战


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/8181040.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存