csh shell_shell编程(一):初始shell
1、shell概述
在了解shell之前,先了解一下操作系统(Operating System,OS),操作系统是位于计算机硬件之上的第一层软件,所有其他软件都要在操作系统的支持下才能运行。操作系统与硬件离的最近的那一部分称为操作系统内核(Kernel),它是操作系统最内侧部分,它的存在使得硬件和软件之间的通信得以顺利进行;操作系统最外侧部分就是shell,shell包裹着操作系统“精密的”内部使其免受意外之损,这也是shell名字的来由。 shell是一种程序,它为用户提供了与操作系统交互的接口。当用户登录或打开终端或打开控制台窗口后,操作系统为用户启动shell。
2、shell的种类
shell种类有很多,常见的有:
2.1、The Bourfne Shell
这种shell由贝尔实验室Steve Bourne开发,是最早的UNIX shell。它因体积小速度快的特点成为shell编程中的首先shell。这种shell的缺点是它缺少交互式使用的特点,比如不能重新调用历史命令,也缺少内置的算术运算和逻辑表达式处理能力。 Bourne shell是Solaris操作系统中默认的shell,它还有如下特征:
- 命令全路径名是/bin/sh和/sbin/sh
- 非root用户下默认提示符是$
- root用户下默认提示符是#
2.2、The C Shell
该shell由加州大学伯克利分校的Bill Joy开发,是对原有UNIX shell的增强。引入的特性包括交互式使用,比如别名和历史命令。引入了便捷的编程特性,比如内置算术运算和类C表达式语法。它还有如下特征:
- 命令全路径是/bin/csh
- 非root用户下默认提示符是主机名+%
- root用户下默认提示符是主机名+#
2.3、The Korn Shell
该shell有贝尔实验室David Korn开发,是Bourne Shell的超集,支持Bourne Shell的一切语法特性,拥有可与C shell相媲美的交互式特性,包括内置算术运算、类C数组、函数和字符串处理的特色,比C shell更快,兼容由Bourne shell编写的脚本。它还有如下特征:
- 命令全路劲是/bin/ksh
- 非root用户下默认提示符是$
- root用户下默认提示符是#
2.4、The GUN Bourne-Again Shell
该sehll兼容Bourne shell,从C shell和Korn shell中引入了新特性,可以使用方向键映射到命令以便重调或编辑。它还有如下特征:
- 命令全路径是/bin/bash
- 非root用户下默认提示符是bash-x.xx$,http://x.xxx暗示了shell版本号
- root用户下默认提示符是bash-x.xx%,x.xx同样暗示了shell版本号
2.5 下面以表格形式对比一下上面四种shell:
shell的种类还有很多,其中GUN Bourne Again Shell(Bash)使用非常广泛,因此本教程将重点介绍Bash。
csh shell_shell编程(一):初始shell相关推荐
- shell编程-初始shell及变量
shell编程 初始shell 程序 语言 编程 ---------------------------------- 语言 自然语言:汉语.英语 计算机语言:c语言.c++.(java php py ...
- sh/bash/csh/Tcsh/ksh/pdksh等shell本质区别
sh/bash/csh/Tcsh/ksh/pdksh等shell本质区别 1. Shell脚本的书写 在写Shell脚本时,往往第一行要注明用什么解释器来解释这个脚本. 如#!/bin/bash即用/ ...
- Linux高级专题详解--shell编程大全(shell变量,if语句,case语句,for循环,while循环,函数调用,数组,正则表达式,shell脚本三剑客--grep,sed,awk家族)
shell编程 初始shell 程序 语言 编程 ---------------------------------- 语言 自然语言:汉语.英语 计算机语言:c语言.c++.(java php py ...
- linux系统默认的环境变量path,Linux编程 12 (默认shell环境变量, PATH变量重要讲解)...
一 .概述 默认情况下, bash shell会用一些特定的环境变量来定义系统的环境.这些默认环境变量可以理解是上篇所讲的系统全局环境变量. 1.1 bash shell支持的Bourne变量 Bo ...
- Linux编程视频课程Shell从入门到精通(完整版)
课程目标: 本套Linux编程视频课程适用于初学者以及各类运维自动化人员,我们可以通过本次系列的shell编程技术学习,掌握企业里面的运维编程必备脚本编程,同时掌握企业运维到底要求会什么东西,有哪些是 ...
- Shell编程规范与Shell中的管道符号(|)和重定向符号<、>、>>
Shell脚本编程规范 Shell脚本的应用场景 Shell编程规范 1.Shell解释器程序的种类 2.编写一个简单的Shell脚本 3.执行脚本文件的方式 4.Shell环境中的:管道(|)与重定 ...
- linux100day(day5)--编程原理和shell脚本
通过前面的学习,我们对于linux文件系统有了一定的了解,我们接下来会初步接触编程原理和尝试编写shell脚本来实现功能. day05--编程原理和shell脚本初步认识 编程原理 在早期编程中,因为 ...
- csh shell_Shell基础知识
一.什么是Shell 1.Shell是命令解释器(command interpreter),是Unix操作系统的用户接口,程序从用户接口得到输入信息,shell将用户程序及其输入翻译成操作系统内核(k ...
- 编程语言和shell编程的基础内容以及grep、egrep命令及相应的正则表达式和用法...
bash的特性之多命令执行的逻辑关系: 1.命令替换 COMMAND1 $(COMMAND2) 2.管道 COMMAND1 | COMMAND2 | COMMAND3 ... 3.顺序执行结构 COM ...
最新文章
- MongoDB 标准连接字符串
- 【SSRS】入门篇(二) -- 建立数据源
- English Speech-Graduation from University
- 第1章 1.9计算机网络概述--OSI参考模型和网络安全
- pwnable.kr lotto题解
- 根据DLL创建LIB输出库的方法
- [css] 说说你对z-index的理解
- l4 l7 代理_什么是四层(L4 proxy)和七层负载均衡(L7 proxy)?区别是什么? 翻译自Nginx官网...
- MySQL无法远程连接解决方案
- 添加内核驱动模块(6)(mydriver.c+ Konfig+Makefile )
- win7打开计算机死机,win7系统进入桌面总是死机或者卡死怎么办
- C# 匿名函数_C# 匿名函数使用整理
- 用Python做一个美丽的每日计划
- Win10下次使用debug进入DOS进行汇编开发
- 【数据库】数据、数据库、数据库管理系统、数据库系统
- contiki学习笔记(二)CTK图形界面
- 【java】getResourceAsStream(“.properties“)配置文件无法读入问题
- 面经:阿里二面自我剖析---Java岗(50分钟)
- 量子计算机物理装置的总称,量子到底是什么?解读量子世界以及量子的实际应用!...
- android技术需求,支撑你各种安卓相机开发需求CameraView