【linux】什么是shell
2018-03-15 23:34
141 查看
什么是shell ?
Shell的作用是解释执行用户的命令,用户输入一条命令,Shell就解释执行一条,这种方式称为交互式(Interactive),Shell还有一种执行命令的方式称为批处理(Batch),用户事先写一个Shell脚本(Script),其中有很多条命令,让Shell一次把这些命令执行完,而不必一条一条地敲命令。Shell脚本和编程语言很相似,也有变量和流程控制语句,但Shell脚本是解释执行的,不需要编译,Shell程序从脚本中一行一行读取并执行这些命令,相当于一个用户把脚本中的命令一行一行敲到Shell提示符下执行。
shell各个版本
1.sh(Bourne Shell):由Steve Bourne开发,各种UNIX系统都配有sh。2.csh(C Shell):由Bill Joy开发,随BSD UNIX发布,它的流程控制语句很像C语言,支持很多Bourne Shell所不支持的功能:作业控制,命令历史,命令行编辑。3.ksh(Korn Shell):由David Korn开发,向后兼容sh的功能,并且添加了csh引入的新功能,是目前很多UNIX系统标准配置的Shell,在这些系统上/bin/sh往往是指向/bin/ksh的符号链接。4.tcsh(TENEX C Shell):是csh的增强版本,引入了命令补全等功能,在FreeBSD、Mac OS X等系统上
4000
替代了csh。5.bash(Bourne Again Shell):由GNU开发的Shell,主要目标是与POSIX标准保持一致,同时兼顾对sh的兼容,bash从csh和ksh借鉴了很多功能,是各种Linux发行版标准配置的Shell,在Linux系统上/bin/sh往往是指向/bin/bash的符号链接。虽然如此,bash和sh还是有很多不同的,一方面,bash扩展了一些命令和参数,另一方面,bash并不完全和sh兼容,有些行为并不一致,所以bash需要模拟sh的行为:当我们通过sh这个程序名启动bash时,bash可以假装自己是sh,不认扩展的命令,并且行为与sh保持一致。6.zsh 的命令补全功能非常强大,可以补齐路径,补齐命令,补齐参数等。
Shell的作用是解释执行用户的命令,用户输入一条命令,Shell就解释执行一条,这种方式称为交互式(Interactive),Shell还有一种执行命令的方式称为批处理(Batch),用户事先写一个Shell脚本(Script),其中有很多条命令,让Shell一次把这些命令执行完,而不必一条一条地敲命令。Shell脚本和编程语言很相似,也有变量和流程控制语句,但Shell脚本是解释执行的,不需要编译,Shell程序从脚本中一行一行读取并执行这些命令,相当于一个用户把脚本中的命令一行一行敲到Shell提示符下执行。
shell各个版本
1.sh(Bourne Shell):由Steve Bourne开发,各种UNIX系统都配有sh。2.csh(C Shell):由Bill Joy开发,随BSD UNIX发布,它的流程控制语句很像C语言,支持很多Bourne Shell所不支持的功能:作业控制,命令历史,命令行编辑。3.ksh(Korn Shell):由David Korn开发,向后兼容sh的功能,并且添加了csh引入的新功能,是目前很多UNIX系统标准配置的Shell,在这些系统上/bin/sh往往是指向/bin/ksh的符号链接。4.tcsh(TENEX C Shell):是csh的增强版本,引入了命令补全等功能,在FreeBSD、Mac OS X等系统上
4000
替代了csh。5.bash(Bourne Again Shell):由GNU开发的Shell,主要目标是与POSIX标准保持一致,同时兼顾对sh的兼容,bash从csh和ksh借鉴了很多功能,是各种Linux发行版标准配置的Shell,在Linux系统上/bin/sh往往是指向/bin/bash的符号链接。虽然如此,bash和sh还是有很多不同的,一方面,bash扩展了一些命令和参数,另一方面,bash并不完全和sh兼容,有些行为并不一致,所以bash需要模拟sh的行为:当我们通过sh这个程序名启动bash时,bash可以假装自己是sh,不认扩展的命令,并且行为与sh保持一致。6.zsh 的命令补全功能非常强大,可以补齐路径,补齐命令,补齐参数等。
相关文章推荐
- linux 什么是shell脚本
- 在linux中shell输入./vmware-install.pl什么意思
- linux 下shell中if的“-e,-d,-f”是什么意思
- linux中Shell历史命令记录文件的路径是什么
- linux中的shell是什么意思
- Linux开发工具(gcc,gdb,make,shell)——三级优化分别做了什么(一)
- 什么是Linux的登录shell与非登录shell
- linux——什么是shell? bash和shell有什么关系?(转)
- linux超级基础系列——什么是shell? bash和shell有什么关系
- linux 下shell中if的“-e,-d,-f”是什么意思
- Linux#Shell#if [ $# -ne 1 ];then 是什么意思?
- Linux开发工具(gcc,gdb,make,shell)——三级优化分别做了什么
- linux超级基础系列——什么是shell? bash和shell有什么关系?
- Linux系统的shell是什么
- linux超级基础系列—什么是shell? bash和shell有什么关系?
- linux 下shell中的“-e,-d,-f”什么意思
- Linux系统的shell是什么
- 在linux的shell中/bin/true是什么意思?
- Linux下的shell工作原理是什么?
- linux 下shell中if的“-e,-d,-f”是什么意思