Linux入門真經 006人機互動終端

2021-08-22 12:59:40 字數 2158 閱讀 6997

計算機需要執行我們下達的各種指令和任務,然而,計算機只能看懂機器語言,而我們人類也只懂得人類的語言,這時候就需要有乙個介面,傳達我們下達的指令,並且使得機器能夠理解並執行。

這樣一種介面就叫做終端(terminal)

終端可以分為兩種:圖形使用者介面(gui)和命令列使用者介面(cli)

比如windos就提供了強大的圖形使用者介面(桌面),但他也提供命令列介面(dos)

linux常見的gui有gnome和kde等等。

linux常見的cli有bash、zsh、tcsh等等

那麼,為什麼我們安裝完之後,是黑乎乎的命令列呢。

因為,為了阻止你用桌面環境,我們之前的教程特地用了最小化安裝,沒有桌面(奸笑)。

請你習慣,因為gui對於linux來說,也不過是一款可有可無的應用而已。由於linux發行版多如牛毛,每個發行版預設使用的gui都是有些差異的,有些差異還不小,你也不想去熟悉乙個又乙個桌面吧。而且,命令列能做的事情,桌面未必能做。

而且bash幾乎成為了每個linux發行版預設支援的cli,可以說熟悉了bash,其他發行版對你來說問題也不大了。

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

在生產環境中,linux大多都跑在伺服器上,如果我們對系統進行控制,一般採用以下兩種方法:

在伺服器上直接插滑鼠、鍵盤、顯示器。

利用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命令,以及如何學習它。不用擔心,命令列沒有那麼多的死記硬背,關鍵要找到規律、理解背後的原理並學會如何獲取幫助。

Linux入門真經 003Linux的分支版本

前一節給大家介紹了linux的應用場景,今天給大家介紹一下linux常見的發行版本。將linux核心原始碼打包編譯成二進位制檔案,並做一定程度的客製化,使其能夠友好地為客戶端所接受和使用是一件頗為複雜的事情。因此,大量linux發行商湧現,也就出現了大量的linux發行版本。我們沒有必要把每乙個發行...

Linux入門真經 007Linux命令的通用語法

這節開始給大家講linux的命令語法格式。首先我們先理解一下再bash命令列中,我們見過很多次的命令提示符字首是什麼意思 root localhost 其含義為 使用者名稱 主機 當前工作目錄 提示符 在學習linux命令之前,我們再了解一下linux檔案系統的結構。我們都用過windows,知道w...

Linux入門真經 035使用find去查詢檔案

常見的linux檔案查詢工具有locate和find。locate的優點在於 它是基於索引庫建立,週期性更新。因此速度相當快,查詢時資源消耗極少。缺點是 由於不是實時查詢,所以一些在更新週期之前新增的檔案沒法找到。我們可以隨時對locate的資料庫進行手動更新,不過更新時會消耗很多的計算資源,甚至會...