我是靠谱客的博主 怡然樱桃,最近开发中收集的这篇文章主要介绍Shell基础概念,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

shell是什么

当我们谈到命令行时,我们实际上是指shell。 shell是一个应用程序,它从键盘读取命令然后交由操作系统来执行,来访问或者实现对操作系统的管理。所有 Linux 发行版都有默认的shell,一般是bash shell,源自GNU Project 。“bash”是“Bourne Again Shell”首字母缩写,bash 是 sh 的增强版本。

终端

在图形界面操作系统下,我们需要一个额外的程序来与shell交互,这个程序就是终端模拟器,在 Ubuntu 系统下的终端叫gnome-terminal。kde桌面环境自带的是konsole,如redhat6,凝思80等系统的终端。

不同的shell

sh

sh的全称是Bourne shell,由AT&T公司的Steve Bourne开发,为了纪念他,就用他的名字命名了。

sh是UNIX上的标准shell,很多UNIX版本都配有sh。sh是第一个流行的Shell。

bash

bash shell是大多数Linux的默认shell。

bash由GNU组织开发,保持了对sh shell的兼容性,是各种Linux发行版默认配置的 shell。

尽管如此,bash和sh还是有一些不同之处:

  • 一方面,bash扩展了一些命令和参数;
  • 另一方面,bash并不完全和sh;
  • 兼容,它们有些行为并不一致,但在大多数企业运维的情况下区别不大,特殊场景可以使用bash代替sh。

csh

sh之后另一个广为流传的shell是由柏克莱大学的Bill Joy设计的,这个shell的语法有点类似C语言,所以才得名为C shell ,简称为csh。

tcsh

tcsh是csh的增强版,加入了命令补全功能,提供了更加强大的语法支持。

ash

一个简单的轻量级的Shell,占用资源少,适合运行于低内存环境,但是与下面讲到的 bash shell 完全兼容。

其它

查看当前终端用的是什么shell?

echo $SHELL

切换到其它shell,如bash shell

exec bash

最后

以上就是怡然樱桃为你收集整理的Shell基础概念的全部内容,希望文章能够帮你解决Shell基础概念所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(77)

评论列表共有 0 条评论

立即
投稿
返回
顶部