Linux入门真经-006人机交互终端

终端

计算机需要执行我们下达的各种指令和任务,然而,计算机只能看懂机器语言,而我们人类也只懂得人类的语言,这时候就需要有一个接口,传达我们下达的指令,并且使得机器能够理解并执行。

这样一种接口就叫做终端(terminal)

终端可以分为两种:图形用户界面(GUI)和命令行用户界面(CLI)

比如windos就提供了强大的图形用户界面(桌面),但他也提供命令行界面(DOS)

linux常见的GUI有GNome和KDE等等。

Linux常见的CLI有bash、zsh、tcsh等等

那么,为什么我们安装完之后,是黑乎乎的命令行呢。

因为,为了阻止你用桌面环境,我们之前的教程特地用了最小化安装,没有桌面(奸笑)。

请你习惯,因为GUI对于Linux来说,也不过是一款可有可无的应用而已。由于Linux发行版多如牛毛,每个发行版默认使用的GUI都是有些差异的,有些差异还不小,你也不想去熟悉一个又一个桌面吧。而且,命令行能做的事情,桌面未必能做。

而且bash几乎成为了每个linux发行版默认支持的CLI,可以说熟悉了bash,其他发行版对你来说问题也不大了。

提到terminal,不得不提及一下对系统的控制方式。

在生产环境中,Linux大多都跑在服务器上,如果我们对系统进行控制,一般采用以下两种方法:

  1. 在服务器上直接插鼠标、键盘、显示器。
  2. 利用ssh或telnet等服务通过网络远程连接

我们使用的是虚拟机,那么,当你在vmware workstation中控制它时,相当于第一种方法,此时,系统为你分配的终端名为虚拟终端(tty);linux默认会为你分配6个terminal来让用户登录。如下图,登录系统后,输入tty命令回车,系统会回显你目前使用的虚拟终端编号,此时我使用的是tty1

我们可以按alt+ctl+F[1-6]来切换虚拟终端(如果你的电脑有功能键Fn,可能还需要按下Fn),此时我按下了alt+ctl+Fn+F4(因为我的电脑有功能键,没有功能键的朋友只需要按下alt+ctl+F4)

我并没有登出用户,但此时显示的确实是未登录的状态,接下来我们登录并查看此时的虚拟终端编号,发现已经改变了,是tty4

alt+ctl+F1可以切换回tty1

如果你通过一些软件(如xshell、secureCRT)连接,相当于第二种方法,系统为你分配的终端名为伪终端(pts)。这里暂时不介绍如何用ssh或telnet登录,因为初学者可能还不清楚什么是ip、什么是服务、什么是端口,什么事防火墙,后面不久会给大家介绍网络知识,到时候会顺便给大家讲解。

OK,现在可以想象一下:甲和乙通过ssh连接服务器,分别分配到了伪终端pts0和pts1,丙在机房连显示器键鼠分配到了tty1,他们三个人被分配到了三个终端,他们可以各自做各自的事情而不互相干扰,这就是多用户、多任务

现在,如果我说Linux是一款多用户、多任务的系统,你便可以理解了吧。

谁在用这机器?

我们可以使用who来显示谁登录了这台机器,如下面的截图表示,root用户正在tty1和pts/0这两个终端工作。

w除了可以显示登录用户、终端、登录ip、登录时间、终端空闲时间、JCPU(进程占用的时间,不包括过去的后台作业时间)、PCPU(终端正在执行的进程所占用的时间)、正在执行的进程,如下图。

 

本节的教程先到这里,大家可以现在虚拟机里玩一玩终端的切换。

接下来,我们将正式开始介绍Linux命令,以及如何学习它。不用担心,命令行没有那么多的死记硬背,关键要找到规律、理解背后的原理并学会如何获取帮助。

 

关注公众号获取每日更新:

猜你喜欢

转载自blog.csdn.net/syaziou/article/details/81530119