什么是Shell?

简单的说, Shell就是一个小程序,这个小程序可以接受来自键盘的命令并把这些命令发送到操作系统,再有系统来执行。在过去,在安装有Unix的计算机上,这是唯一的可用的交互式操作。而如今,可以通过图形化界面来输入命令行,比如Shell。

在大多数的Linux计算机中,安装有个一个叫bash(bash是Bourne Again SHell的简写,这是有Steve Bourne编写的一个早期Shell的升级版。),它充当Shell的角色。通常在Linux计算机上有多种可用的Shell,比如:ksh、tcsh、 zsh。

Xterm、Gnome-Terminal、Konsole之类都是什么?

一般的Linux系统通常包含多种终端模拟器,就像:XTerm、Rxvt、Konsole、Kvt、Gnome-Terminal、Nxterm、eterm。

以下是基于htop命令进行展示的结果:

Gnome Terminal

对于GNOME用户,Gnome Terminal显然都是默认安装的。也就是说,它是系统的一部分。与列出的其他终端程序一样,它支持彩色的文本,多样化的主题,透明,鼠标交互,多标签。这个终端支持多用户,所以可以任意尝试不同的设置项,而不会影响当前的配置,或者也可以为不同的任务设置不同的配置。Gnome Terminal支持链接的点击,这个特性用过之后就无法舍弃。

作为Gnome的一个组件,它的标题栏的样式跟GTK主题保持一致,与系统的其他部分的外观也一样,与大多数Gnome组件一样,默认的终端遵循GPL v3协议。

Guake

Guake少数有“下拉”样式的界面的终端里的头一个,按下热键后下拉的内容会在屏幕的顶端显式。Guake和其他有下拉风格界面的终端的风格在Quake也有,出于对90年代的怀念,可以通过这种方式来重温我的最爱。

在Guake众多特性中,自带了大量的主题,包括Solarized Dark和Tomorrow Night。它有足够多的配置项可以满足所有的需求,默认的热荐(F12 启动,F11 全屏)。Guake可以在GitHub上找到,基于 GPLv2。

Konsole

Konsole是KDE附带的默认终端仿真器。作为一个KDE组件,它为许多其它的KDE应用提供了嵌入式终端,包括Konqueror,Kate,KDevelop。它的功能和GNOME默认的终端类似。如果不喜欢终端的屏幕显示比例或TMUX,它还提供了分割终端功能。Konsole基于GPL2协议

Terminator

Terminator在很多地方与GNOME终端类似,也像Konsole,它的过人之处在于分割终端,在一个窗口里显示多个终端。也是跨平台的,如果想在Mac,Windows和Linux上面体验,它可能是不错的选择。它也有一些漂亮的功能,包括文字和网址的拖放功能,精心设计的垂直滚动功能,制表符适度处理(许多程序员需要这个),自动日志等。它还可以优雅的处理 UTF-8 字符。Terminator基于GPL2开源。

Tilda

Tilda是为GTK设计的另一种下拉抖动样式(Quake-style)终端仿真器,它的名字是取自波浪号键(Tilda),默认波浪号键调用雷神之锤终端。Tilda的默认界面是很小的,没有窗口标题,边框,或任何东西,但需要改变样式时可以在偏好中设置。它有大量的配备,从设置键绑定,设置默认的大小和颜色,滚动设置,和更多的参数。Tilda基于GPL2开源。

Xterm

如果感觉Xterm它很古老,没错,因为它的确很古老。Xterm出生于1984年,Xterm是X Window系统的默认终端模拟器,需要避开任何的图形工具包,否则它可能会显示在你的窗口管理器上。但这种简约的做法也相应的缺乏特色;这是非常简单的一个终端。不过,对于一个非常小的带有图形系统的Linux,Xterm中仍有一席之地。Xterm基于MIT许可。

Yakuake

Yakuake是另一个下拉终端模拟器,它是KDE家庭的一部分。简称“又是一个kuake系列Yakuake实际上可以看作是一个前端Konsole(上面提到),它的许多特征是相似的。如果你喜欢的Konsole但又喜欢抖动样式,Yakuake是不错的选择。Yakuake基于GPL2。

参考:

https://www.oschina.net/translate/top-open-source-terminal-emulators(以上内容转自此篇文章,后期经过大量修改)

最新文章

  1. HTTP连接管理
  2. November 2nd Week 45th Wednesday 2016
  3. ztree获取当前选中节点子节点id集合的方法(转载)
  4. React学习笔记
  5. Windows 8 IIS中配置PHP运行环境的方法
  6. HDU 4751 Divide Groups
  7. PHP通过IP 获取 地理位置(实例)
  8. 字符(汉子)转换为ASCII
  9. SQL Server Schema
  10. Android进阶(四)一个APP引发的思索之ArrayList的add总是添加相同的值
  11. Mysql得隔离级别
  12. SQLserver数据库反编译生成Hibernate实体类和映射文件
  13. 01pxc集群的部署
  14. ubuntu16.04 HyperLedger Fabric 1.2.0 开发环境搭建
  15. 【翻译】Flume 1.8.0 User Guide(用户指南) Processors
  16. Memcached未授权访问
  17. 将Highcharts图表数据生成Table表格
  18. Kali系列之hydra ssh密码爆破
  19. day17-json格式转换
  20. 利用阿里云提供的镜像快速更换本地的yum源

热门文章

  1. hdu 6112 今夕何夕(模拟)
  2. (Go)07.Go语言中strings和strconv包示例代码详解02
  3. Candies(差分约束系统)
  4. go之变量、指针、引用地址
  5. oj测试点相关 (整理摘编)
  6. Php.ini文件位置在哪里 Php.ini文件找不到
  7. .net core2.0 自定义中间件
  8. shiro登陆权限验证
  9. SQL Server 检测到基于一致性的逻辑 I/O 错误 pageid 不正确(应为 1:1772,但实际为 0:0)。在文件 'D:\Program Files\Microsoft SQL Ser
  10. fatal error C1083: 无法打开包括文件:“stdio.h