Shell、Xterm、Gnome-Terminal、Konsole简介(转)
什么是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(以上内容转自此篇文章,后期经过大量修改)
最新文章
- HTTP连接管理
- November 2nd Week 45th Wednesday 2016
- ztree获取当前选中节点子节点id集合的方法(转载)
- React学习笔记
- Windows 8 IIS中配置PHP运行环境的方法
- HDU 4751 Divide Groups
- PHP通过IP 获取 地理位置(实例)
- 字符(汉子)转换为ASCII
- SQL Server Schema
- Android进阶(四)一个APP引发的思索之ArrayList的add总是添加相同的值
- Mysql得隔离级别
- SQLserver数据库反编译生成Hibernate实体类和映射文件
- 01pxc集群的部署
- ubuntu16.04 HyperLedger Fabric 1.2.0 开发环境搭建
- 【翻译】Flume 1.8.0 User Guide(用户指南) Processors
- Memcached未授权访问
- 将Highcharts图表数据生成Table表格
- Kali系列之hydra ssh密码爆破
- day17-json格式转换
- 利用阿里云提供的镜像快速更换本地的yum源
热门文章
- hdu 6112 今夕何夕(模拟)
- (Go)07.Go语言中strings和strconv包示例代码详解02
- Candies(差分约束系统)
- go之变量、指针、引用地址
- oj测试点相关 (整理摘编)
- Php.ini文件位置在哪里 Php.ini文件找不到
- .net core2.0 自定义中间件
- shiro登陆权限验证
- SQL Server 检测到基于一致性的逻辑 I/O 错误 pageid 不正确(应为 1:1772,但实际为 0:0)。在文件 'D:\Program Files\Microsoft SQL Ser
- fatal error C1083: 无法打开包括文件:“stdio.h