Unit2_文本用戶界面基礎_2011_第1頁
Unit2_文本用戶界面基礎_2011_第2頁
Unit2_文本用戶界面基礎_2011_第3頁
Unit2_文本用戶界面基礎_2011_第4頁
Unit2_文本用戶界面基礎_2011_第5頁
已閱讀5頁,還剩82頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、UNIT 2UNIT 2 命令行基礎知識命令行基礎知識 vivi編輯器編輯器 Linux系統(tǒng)提供兩種用戶操作界面:一種是基于系統(tǒng)提供兩種用戶操作界面:一種是基于X Windows(Unix的通用圖形用戶界面標準)的圖形用的通用圖形用戶界面標準)的圖形用戶界面(如戶界面(如GNOME和和KDE桌面環(huán)境);另一種是基于桌面環(huán)境);另一種是基于Shell的文本用戶界面,也稱的文本用戶界面,也稱Shell界面界面或或命令行界面命令行界面。Linux系統(tǒng)提供大量的命令和工具,如能熟練地掌握系統(tǒng)提供大量的命令和工具,如能熟練地掌握最基本的命令,靈活地利用系統(tǒng)提供的各種機制,組合最基本的命令,靈活地利用系統(tǒng)

2、提供的各種機制,組合運用運用Linux系統(tǒng)的命令和工具,就能充分地發(fā)揮系統(tǒng)的命令和工具,就能充分地發(fā)揮Linux系系統(tǒng)的潛能。統(tǒng)的潛能。Linux系統(tǒng)的強大功能完全體現(xiàn)在其命令行系統(tǒng)的強大功能完全體現(xiàn)在其命令行環(huán)境中,環(huán)境中,圖形界面(如圖形界面(如GNOME)提供的所有功能實際)提供的所有功能實際上也是利用基本的命令和工具實現(xiàn)的上也是利用基本的命令和工具實現(xiàn)的。因此,。因此,熟練地掌熟練地掌握、靈活地運用一定數(shù)量的常用命令和工具是每個學習握、靈活地運用一定數(shù)量的常用命令和工具是每個學習Linux系統(tǒng)的人都應當具有的基本功。系統(tǒng)的人都應當具有的基本功。 什么是什么是ShellShell版本版本

3、進入和退出進入和退出Shell界面界面 Shell提示符提示符Shell命令行的基本語法規(guī)則命令行的基本語法規(guī)則1.11.1 什么是什么是ShellShell Shell的原意是外殼,用來形容物體外部的架構。的原意是外殼,用來形容物體外部的架構。Linux的的Shell作為操作系統(tǒng)的外殼,為用戶提供了作為操作系統(tǒng)的外殼,為用戶提供了使用整個使用整個Linux系統(tǒng)的文本用戶界面,它是系統(tǒng)的文本用戶界面,它是命令語言命令語言程序設計語言程序設計語言語言解釋器語言解釋器的統(tǒng)稱,負責用戶與操作系統(tǒng)內核之間以及與的統(tǒng)稱,負責用戶與操作系統(tǒng)內核之間以及與Linux操作操作系統(tǒng)支持的各種系統(tǒng)工具及應用程序之

4、間的通信。系統(tǒng)支持的各種系統(tǒng)工具及應用程序之間的通信。首先,首先,Shell是一種功能豐富的是一種功能豐富的交互式命令語言交互式命令語言,它,它提供有上百條基本的控制臺操作命令。所謂交互式,就提供有上百條基本的控制臺操作命令。所謂交互式,就是用戶從鍵盤每輸入一條命令,就可以立即得到是用戶從鍵盤每輸入一條命令,就可以立即得到Shell解解釋器釋器 的響應,的響應,Shell解釋器解釋用戶輸入的解釋器解釋用戶輸入的Shell命令然命令然后傳送給內核執(zhí)行,并把內核反饋的結果信息經解釋后后傳送給內核執(zhí)行,并把內核反饋的結果信息經解釋后顯示在屏幕上。顯示在屏幕上。Shell交互界面(即文本用戶界面)非常

5、交互界面(即文本用戶界面)非常簡單,它通常包含提示用戶輸入命令行的提示符,并且簡單,它通常包含提示用戶輸入命令行的提示符,并且以回車鍵結束命令行。以回車鍵結束命令行。其次,其次,Shell也是一種也是一種非交互式的解釋型編程語言非交互式的解釋型編程語言。它具有編程語言的語法,可定義變量,執(zhí)行賦值操作它具有編程語言的語法,可定義變量,執(zhí)行賦值操作等;并提供了通常高級編程語言所具有的控制流結構等;并提供了通常高級編程語言所具有的控制流結構(包括循環(huán)和分支)。(包括循環(huán)和分支)。用戶可使用用戶可使用Shell語言編寫出具有復雜算法的語言編寫出具有復雜算法的Shell腳本腳本(script)程序,從本

6、質上講,)程序,從本質上講,Shell script是將若干是將若干Shell命令行按某種算法組合到一個文命令行按某種算法組合到一個文件中。件中。Shell解釋器可連續(xù)解釋執(zhí)行解釋器可連續(xù)解釋執(zhí)行Shell腳本,在執(zhí)腳本,在執(zhí)行過程中行過程中Shell解釋器通常與用戶不進行交互,直到該解釋器通常與用戶不進行交互,直到該腳本執(zhí)行完再輸出結果信息。腳本執(zhí)行完再輸出結果信息。 1.21.2 ShellShell版本版本 在在Linux系統(tǒng)中常見的系統(tǒng)中常見的Shell版本有以下幾種:版本有以下幾種:(1) Bourne Shell (sh):它是它是UNIX最初使用的最初使用的Shell,并且在,并

7、且在每種每種UNIX上都可以使用。它在上都可以使用。它在Shell編程方面相當優(yōu)秀,但處理與用編程方面相當優(yōu)秀,但處理與用戶的交互方面不如其他幾種戶的交互方面不如其他幾種Shell。(2) C Shell (csh):它更多地考慮了用戶界面的友好性,支持如命:它更多地考慮了用戶界面的友好性,支持如命令補齊等一些令補齊等一些Bourne Shell所不支持的特性,但其編程接口做得不如所不支持的特性,但其編程接口做得不如Bourne Shell。C Shell被很多被很多C程序員使用,因為程序員使用,因為C Shell的語法和的語法和C語言的語法很相似,語言的語法很相似,C Shell也由此得名。

8、也由此得名。(3) Korn Shell (ksh):它集合了:它集合了C Shell和和Bourne Shell的優(yōu)點,的優(yōu)點,并且和并且和Bourne Shell完全兼容。完全兼容。(4) Bourne Again Shell (bash):bash是大多數(shù)是大多數(shù)Linux系統(tǒng)系統(tǒng)(包括(包括Red Hat Linux)的)的默認默認Shell。它是。它是Bourne Shell的擴展,的擴展,并且與并且與Bourne Shell完全向后兼容,而且在完全向后兼容,而且在Bourne Shell的基礎上的基礎上增加和增強了很多特性,是最常用的一種增加和增強了很多特性,是最常用的一種shel

9、l。本課程采用的是本課程采用的是bash。(5) tcsh:它是:它是csh的一個擴展版本,與的一個擴展版本,與csh完全向后兼容,但它包完全向后兼容,但它包含了更多使用戶感覺方便的新特性。含了更多使用戶感覺方便的新特性。(6) pdksh:它是一個專門為:它是一個專門為Linux編寫的編寫的ksh的擴展版本。的擴展版本。ksh是是商用商用Shell,而,而pdksh是免費的。是免費的。(7) zsh:這是最大的:這是最大的Unix/Linux Shell之一,提供的命令最為豐之一,提供的命令最為豐富。對于普通應用,一般沒有必要安裝富。對于普通應用,一般沒有必要安裝zsh。1.31.3 進入和

10、退出進入和退出ShellShell界面界面 進入進入Linux系統(tǒng)的系統(tǒng)的Shell交互界面有兩種基本方式:交互界面有兩種基本方式:直接進入方式和間接進入方式。直接進入方式和間接進入方式。直接進入方式:在安裝系統(tǒng)時選擇文本界面直接進入方式:在安裝系統(tǒng)時選擇文本界面(text mode),則在系統(tǒng)啟動時直接進入),則在系統(tǒng)啟動時直接進入Shell界界面;面;間接進入方式:在安裝系統(tǒng)時選擇圖形界面間接進入方式:在安裝系統(tǒng)時選擇圖形界面(graphics mode),系統(tǒng)啟動后進入的是圖形桌面),系統(tǒng)啟動后進入的是圖形桌面環(huán)境,再在桌面環(huán)境中切換進環(huán)境,再在桌面環(huán)境中切換進Shell界面。界面。1.

11、1. 終端方式終端方式終端方式是間接進入終端方式是間接進入Shell界面的方式。界面的方式。在圖形桌面環(huán)境下可通過如下方法進入在圖形桌面環(huán)境下可通過如下方法進入Shell界面:界面:方法方法1:打開主菜單,選擇:打開主菜單,選擇【應用程序應用程序】【附件附件】 【終端終端】。方法方法2:用鼠標右擊桌面,在彈出的快捷菜單中選擇:用鼠標右擊桌面,在彈出的快捷菜單中選擇【新建終端新建終端】。方法方法3:雙擊桌面上的終端啟動器。雙擊桌面上的終端啟動器。(首先,鼠標(首先,鼠標單擊開始單擊開始/系統(tǒng)工具,找到終端快捷方式,用鼠標單擊右系統(tǒng)工具,找到終端快捷方式,用鼠標單擊右鍵,選擇鍵,選擇“將該啟動器加

12、入面板將該啟動器加入面板“)。)。終端窗口終端窗口shell命令提示符命令提示符退出終端式退出終端式Shell界面返回桌面可通過如下方法:界面返回桌面可通過如下方法:方法方法1:單擊:單擊Shell窗口右上角的窗口右上角的“”按鈕。按鈕。方法方法2:輸入:輸入exit 命令命令方法方法3:按:按Ctrl+D。 問題:問題:1、在圖形界面下,有幾種方法可以進入、在圖形界面下,有幾種方法可以進入shell界面?界面?2、有幾種方式退出終端式、有幾種方式退出終端式Shell界面?界面?2.2. 虛擬控制臺方式虛擬控制臺方式虛擬控制臺是虛擬控制臺是Linux提供的提供的多用戶并發(fā)多用戶并發(fā)使用系統(tǒng)的方

13、使用系統(tǒng)的方式,它提供的是式,它提供的是Shell界面。默認情況下,界面。默認情況下,Linux有有6個虛個虛擬控制臺,分別名為擬控制臺,分別名為tty1tty6。如果在安裝系統(tǒng)時選擇的是文本界面模式,則系統(tǒng)啟如果在安裝系統(tǒng)時選擇的是文本界面模式,則系統(tǒng)啟動時默認進入動時默認進入Shell界面的虛擬控制臺。界面的虛擬控制臺。在圖形桌面環(huán)境下,超級用戶(在圖形桌面環(huán)境下,超級用戶(root)可以通過編輯)可以通過編輯/etc/inittab文件,把系統(tǒng)啟動后的初始界面改為虛擬控文件,把系統(tǒng)啟動后的初始界面改為虛擬控制臺。制臺。 正常狀態(tài)下可以在正常狀態(tài)下可以在Shell界面,敲入快捷鍵:界面,敲

14、入快捷鍵:Ctrl+Alt+F1F6,進行虛擬控制臺的切換,而實際上卻,進行虛擬控制臺的切換,而實際上卻不行,這是為什么呢?不行,這是為什么呢? vmware中運行的中運行的linux如何切換虛擬控制臺如何切換虛擬控制臺? ctrl+alt+Fn不起作用了?不起作用了?高手指點:修改高手指點:修改vmware中的熱鍵。中的熱鍵。將將VMWare切換切換Windows系統(tǒng)的熱鍵改成系統(tǒng)的熱鍵改成Alt+Shift,這樣,這樣,在在vmware中的中的linux中按中按Ctrl+alt就不會跟就不會跟vmware的熱鍵的熱鍵沖突了。沖突了。具體方法:具體方法:vmware-Edit-prefere

15、nces-Hot Keys-Custom: Ctl選成選成Dont Care Shit 選成選成Down Alt選成選成Down ,應用確,應用確定后關掉定后關掉vmware,重新打開,重新打開vmware就可以了。就可以了。當然,當然,要記住要記住VMWare切換鍵就變成切換鍵就變成Alt+Shift了!了!啟動到文本界面方法如下:啟動到文本界面方法如下:在主菜單中選擇在主菜單中選擇【附件附件】【文本編輯器文本編輯器】,彈,彈出文本編輯器窗口;出文本編輯器窗口;打開打開/etc/inittab文件;文件;找到語句找到語句“id:5:initdefault: ”,將該語句中的將該語句中的5改為

16、改為3。文本編輯器窗口文本編輯器窗口【打開文件打開文件】對話框對話框打開打開/etc/inittab文件文件選擇根目錄選擇根目錄輸入文件路徑名輸入文件路徑名etc/inittab修改初始的用戶界面模式修改初始的用戶界面模式將該語句中的將該語句中的5改為改為3重新啟動系統(tǒng)后,重新啟動系統(tǒng)后,Linux系統(tǒng)會自動進入虛擬控制臺系統(tǒng)會自動進入虛擬控制臺登錄界面,默認是登錄界面,默認是tty1。由于每個控制臺各自獨立,因此。由于每個控制臺各自獨立,因此在同一臺在同一臺Linux計算機上可以使用不同的用戶賬號進行登計算機上可以使用不同的用戶賬號進行登錄。錄。在虛擬控制臺上,也可以使用在虛擬控制臺上,也可

17、以使用startxstartx命令或命令或init 5切切換到換到X Windows桌面環(huán)境(如果安裝了桌面環(huán)境)。桌面環(huán)境(如果安裝了桌面環(huán)境)。虛擬控制臺窗口虛擬控制臺窗口問題:問題:1、在安裝、在安裝LINUX系統(tǒng)時,選擇的默認登錄模式是圖形系統(tǒng)時,選擇的默認登錄模式是圖形模式,如何將登錄模式改為文本模式模式,如何將登錄模式改為文本模式?2、在虛擬控制臺登錄界面下,如何切換到圖形模式?、在虛擬控制臺登錄界面下,如何切換到圖形模式?【注意注意】虛擬控制臺方式與終端方式的差別虛擬控制臺方式與終端方式的差別終端方式是間接進入終端方式是間接進入Shell界面的,即用戶是在圖界面的,即用戶是在圖形

18、方式下先登錄并進入桌面環(huán)境后再切換到形方式下先登錄并進入桌面環(huán)境后再切換到Shell界面的,界面的,故在進入故在進入Shell界面后無需再進行登錄。另外用戶注銷和界面后無需再進行登錄。另外用戶注銷和關機也是在桌面環(huán)境中以圖形方式進行的。關機也是在桌面環(huán)境中以圖形方式進行的。而虛擬控制臺方式是在啟動系統(tǒng)后直接進入而虛擬控制臺方式是在啟動系統(tǒng)后直接進入Shell界面的,用戶的登錄、注銷和關機都是在界面的,用戶的登錄、注銷和關機都是在Shell界面中進界面中進行的。登錄的提示符是:行的。登錄的提示符是: login:/輸入用戶名輸入用戶名 password: /輸入口令,無顯示輸入口令,無顯示用戶注

19、銷及關機也都是在用戶注銷及關機也都是在Shell提示符下直接進行。提示符下直接進行。注銷命令是:注銷命令是:logout /當前賬號注銷當前賬號注銷關機命令(關機命令(root用戶)是:用戶)是:shutdown -h now /立刻關機立刻關機 shutdown -r now /重新啟動計算機重新啟動計算機 reboot /重新啟動計算機重新啟動計算機問題:問題:1、圖形界面下與文本模式下分別如何注銷用戶,如何關、圖形界面下與文本模式下分別如何注銷用戶,如何關機,如何重新啟動機器?機,如何重新啟動機器?1.4 Shell1.4 Shell提示符提示符進入進入Shell界面后,用戶可在界面后,

20、用戶可在Shell提示符(串)后輸提示符(串)后輸入各種入各種Shell命令。命令。Shell提示符的格式為:提示符的格式為:用戶登錄名用戶登錄名 主機名主機名 當前目錄名用戶類當前目錄名用戶類例如:例如:rootRHL9 etc#zhangsanRHL9 zhangsan$其中,其中,“#”表示超級用戶,表示超級用戶,“$”表示普通用戶。表示普通用戶。 問題:問題:1、shell提示符提示符cxxyRHL9 cxxy$中的第一中的第一個個”cxxy”代表什么意思?第代表什么意思?第2個個” cxxy”代表什么意代表什么意思?思?“$”代表什么意思?代表什么意思?1.5 Shell1.5 Sh

21、ell命令行的基本語法規(guī)則命令行的基本語法規(guī)則 Shell命令行的一般格式為:命令行的一般格式為:命令名命令名 選項選項 參數(shù)參數(shù)(1)命令行中的字母嚴格命令行中的字母嚴格區(qū)分大小寫區(qū)分大小寫。命令名由小寫。命令名由小寫英文字母組成,往往是表示相應功能的英文單詞或單英文字母組成,往往是表示相應功能的英文單詞或單詞的縮寫。例如,詞的縮寫。例如,date表示日期,表示日期,cp是是copy的縮寫。的縮寫。(2)方括號括起的部分表明該項是可缺省的。方括號括起的部分表明該項是可缺省的。(3)選項主要用于限定命令的具體功能。每個命令通選項主要用于限定命令的具體功能。每個命令通常均提供一定數(shù)量的選項,選項

22、通常用單個英文字母常均提供一定數(shù)量的選項,選項通常用單個英文字母表示,并以減號(表示,并以減號(-)引導,)引導,多個選項可以只用一個減多個選項可以只用一個減號引導號引導。如。如du -k-c du -kc 。 與與UNIX不同的是,不同的是,Linux還提供以雙減號還提供以雙減號“-”引導引導的命令選項(稱的命令選項(稱GNU選項),其選項通常為單個英文選項),其選項通常為單個英文單詞或詞組,如單詞或詞組,如“-help”。(4)參數(shù)是命令操作的對象,可以是參數(shù)是命令操作的對象,可以是目錄名、文件名目錄名、文件名或其他內容或其他內容。(5)在命令名和選項及參數(shù)之間必須用在命令名和選項及參數(shù)之

23、間必須用空格空格或或Tab鍵鍵隔開。隔開。(6)一個命令行中通常僅輸入一個命令,也可以輸入一個命令行中通常僅輸入一個命令,也可以輸入多個命令,命令之間用多個命令,命令之間用分號分號隔開。如隔開。如$cd /etc; ls -1 該命令行包含了該命令行包含了cd和和ls兩條命令,兩條命令,cd命令中只含有參數(shù),命令中只含有參數(shù),ls命令命令中只含有選項。中只含有選項。問題:問題:判斷題:判斷題:1、shell命令行中的字母不區(qū)分大小寫。()命令行中的字母不區(qū)分大小寫。()2、一個命令行中通常僅輸入一個命令,也可以輸入多個、一個命令行中通常僅輸入一個命令,也可以輸入多個命令,命令之間用分號隔開。(

24、)命令,命令之間用分號隔開。()3、在命令名和選項及參數(shù)之間必須用空格或、在命令名和選項及參數(shù)之間必須用空格或Tab鍵隔開。鍵隔開。()()1.61.6 命令自動補全命令自動補全Shell具有命令自動補全功能,對某些記不清楚的命令具有命令自動補全功能,對某些記不清楚的命令或命令過長的情況很有用。對于能唯一確定的命令,輸或命令過長的情況很有用。對于能唯一確定的命令,輸入該命令的前若干字符。然后按下鍵盤上的入該命令的前若干字符。然后按下鍵盤上的Tab鍵,就鍵,就可以自動補全該命令的剩余部分??梢宰詣友a全該命令的剩余部分?!纠?】要輸入要輸入hostname命令來查看當前主機的名稱,命令來查看當前

25、主機的名稱,可以輸入可以輸入hostn后按下后按下Tab鍵,這時鍵,這時Shell會自動在后面會自動在后面補全為補全為hostname。【例例2】假設當前目錄中包含以下的文件和子目錄:假設當前目錄中包含以下的文件和子目錄:news/ bin/ games/ mail/ samplefile test/要進入要進入test子目錄,可輸入如下命令行:子目錄,可輸入如下命令行:$cd t再按再按Tab鍵,則鍵,則Shell會自動補全為:會自動補全為:$cd test因為因為test是當前目錄中唯一以字母是當前目錄中唯一以字母 t 開頭的子目錄。開頭的子目錄。【例例3】如果輸入的命令前綴不能唯一標識某

26、個命令時,如果輸入的命令前綴不能唯一標識某個命令時,則按下則按下Tab鍵時,系統(tǒng)將發(fā)出警告聲,再按下鍵時,系統(tǒng)將發(fā)出警告聲,再按下Tab鍵時,鍵時,系統(tǒng)會給出可用來補全的命令清單。系統(tǒng)會給出可用來補全的命令清單。如,當輸入如,當輸入host時,第一次按時,第一次按Tab鍵時系統(tǒng)發(fā)出鍵時系統(tǒng)發(fā)出警告聲,再按警告聲,再按Tab鍵時,系統(tǒng)會給出所有以鍵時,系統(tǒng)會給出所有以host開頭開頭的命令,如下所示:的命令,如下所示:$ hosthost hostid hostname hoststat練習:練習:1、Shell具有命令自動補全功能,對于能唯一確定的命具有命令自動補全功能,對于能唯一確定的命令,

27、輸入該命令的前若干字符。然后按下鍵盤上的令,輸入該命令的前若干字符。然后按下鍵盤上的( )鍵,就可以自動補全該命令的剩余部分。)鍵,就可以自動補全該命令的剩余部分。2、假設當前目錄中包含以下的文件和子目錄:假設當前目錄中包含以下的文件和子目錄:news/ bin/ games/ mail/ samplefile test/輸入如下命令行:輸入如下命令行:$cd n此時按此時按Tab鍵,則鍵,則Shell會自動補全為(會自動補全為( )。)。1.71.7 歷史命令歷史命令Shell將用戶每次輸入的命令都記錄在命令歷史緩沖區(qū)將用戶每次輸入的命令都記錄在命令歷史緩沖區(qū)中,以便用戶可能用到過去用過的命

28、令。要調出歷史緩中,以便用戶可能用到過去用過的命令。要調出歷史緩沖區(qū)中保存的命令,可使用兩種方法:沖區(qū)中保存的命令,可使用兩種方法:(1) 使用箭頭鍵使用箭頭鍵在命令提示符狀態(tài)下,按向上箭頭可回退到上一條命在命令提示符狀態(tài)下,按向上箭頭可回退到上一條命令(在命令提示符后顯示上一條命令),若連續(xù)按向上令(在命令提示符后顯示上一條命令),若連續(xù)按向上箭頭則連續(xù)回退。箭頭則連續(xù)回退。 (2) 使用使用history命令命令history命令將顯示用戶執(zhí)行過的全部命令。命令將顯示用戶執(zhí)行過的全部命令。 【例例4】 history命令的輸入及結果顯示命令的輸入及結果顯示$history1 ls2 cd

29、new3 ls -l4 cd .5 clear6 hostname7 history命令命令history -c將清除歷史緩沖區(qū)中的內容。將清除歷史緩沖區(qū)中的內容。 練習:練習:1、shell查看歷史命令的辦法有哪些?查看歷史命令的辦法有哪些?2、將清除歷史緩沖區(qū)中的內容的命令是什么?將清除歷史緩沖區(qū)中的內容的命令是什么?1.81.8 通配符通配符 Shell命令允許使用命令允許使用通配符作為特殊結構的字符串模式。通配符作為特殊結構的字符串模式。下面是常用的通配符。下面是常用的通配符。 * *星號用于匹配任意多個字符。例如,要查找當前星號用于匹配任意多個字符。例如,要查找當前目錄中所有擴展名為

30、目錄中所有擴展名為.doc的文件,可以使用如下命令:的文件,可以使用如下命令:$ ls *.doc ? ? 問號用于匹配單個字符。例如,要顯示問號用于匹配單個字符。例如,要顯示/bin目錄目錄下所有文件名為三個字符的文件,可使用如下命令:下所有文件名為三個字符的文件,可使用如下命令:$ ls /bin/? 或或X-X用于匹配字符集或字符范圍。用于匹配字符集或字符范圍。 【例例5】 $ls pw* /列出當前目錄中以列出當前目錄中以p或或w打頭的所有文件打頭的所有文件$ls *0-9*/列出當前目錄中所有名字中包含有數(shù)字的文件列出當前目錄中所有名字中包含有數(shù)字的文件 !或或與正好相反,表示可以匹

31、配任何一與正好相反,表示可以匹配任何一個不屬于給定字符集范圍的字符。如個不屬于給定字符集范圍的字符。如 $ls !pw* /列出當前目錄中不以列出當前目錄中不以p或或w打頭的所有文件打頭的所有文件練習:練習:1、查找當前目錄下所有擴展名為、查找當前目錄下所有擴展名為.txt的文件,應該使用的文件,應該使用的命令是?的命令是?2、查找當前目錄下第一個字母為、查找當前目錄下第一個字母為a的所有文件,應該使的所有文件,應該使用的命令是?用的命令是?3、查找當前目錄下文件名含有字母、查找當前目錄下文件名含有字母a的所有文件,應該的所有文件,應該使用的命令是?使用的命令是?4、查找當前目錄下文件名中第二

32、字母為、查找當前目錄下文件名中第二字母為a的所有文件,的所有文件,應該使用的命令是?應該使用的命令是?5、查找當前目錄中以字母、查找當前目錄中以字母a或或b開頭的所有文件,應該開頭的所有文件,應該使用的命令是?使用的命令是?復習復習1、圖形界面下,如何進入到、圖形界面下,如何進入到shell界面?界面?2、圖形界面下,如何進入到虛擬控制臺下的、圖形界面下,如何進入到虛擬控制臺下的shell界面界面?3、如何更改、如何更改linux的登錄模式?的登錄模式?4、 zhangsanRHL9 zhangsan$各字符串是什么各字符串是什么意思?意思?5、shell命令自動補全的鍵是哪個?命令自動補全的

33、鍵是哪個?6、查看歷史命令的辦法有哪些?、查看歷史命令的辦法有哪些?7、通配符、通配符*和?各代表什么意思?和?各代表什么意思?1.91.9 輸入輸出重定向輸入輸出重定向一般情況下一般情況下Shell命令是從鍵盤輸入的(標準輸命令是從鍵盤輸入的(標準輸入),并將命令的結果在屏幕上顯示(標準輸出)。入),并將命令的結果在屏幕上顯示(標準輸出)。但在必要時可以通過重定向符改變標準的輸入輸出。但在必要時可以通過重定向符改變標準的輸入輸出。1. 1. 輸入重定向輸入重定向輸入重定向符輸入重定向符“”的作用是把命令(或執(zhí)行程序)的的作用是把命令(或執(zhí)行程序)的標準輸入重新定向到指定文件。標準輸入重新定向

34、到指定文件。輸入重定向的一般形式是:輸入重定向的一般形式是:命令命令 文件名文件名【例例6】有一個可執(zhí)行程序有一個可執(zhí)行程序prog,其源程序用,其源程序用C語言編寫,語言編寫,為了輸入數(shù)據(jù),程序中使用了為了輸入數(shù)據(jù),程序中使用了scanf()函數(shù)調用語句。如函數(shù)調用語句。如果所需數(shù)據(jù)(例如成績表)預先已錄入一個文件果所需數(shù)據(jù)(例如成績表)預先已錄入一個文件date1,那么就可以讓那么就可以讓prog執(zhí)行時直接從執(zhí)行時直接從date1文件中讀取相應數(shù)文件中讀取相應數(shù)據(jù),而不必交互式地從鍵盤錄入。執(zhí)行據(jù),而不必交互式地從鍵盤錄入。執(zhí)行prog的命令行可以的命令行可以是:是:$prog 文件名文件

35、名 /命令的輸出信息送入指定文件命令的輸出信息送入指定文件 命令命令文件名文件名/命令的輸出信息附加到指定文件后命令的輸出信息附加到指定文件后【例例7】一個簡單的例子是:一個簡單的例子是: $ls l /bintmp練習:練習:1、輸入重定向和輸出重定向的符號分別是什么?、輸入重定向和輸出重定向的符號分別是什么?2、將當前目錄下的所有內容輸出到文件、將當前目錄下的所有內容輸出到文件123.txt的命令的命令是?是?1.101.10 獲得幫助信息獲得幫助信息如果碰到不會用的命令,可以使用以下兩種方法獲如果碰到不會用的命令,可以使用以下兩種方法獲得相關的幫助信息。得相關的幫助信息。1.1. 使用使

36、用-help-help選項選項大部分命令都可以使用大部分命令都可以使用-help選項來獲得命令的使選項來獲得命令的使用幫助信息。用幫助信息?!纠?1】使用命令使用命令 $ cat -help 可以獲得可以獲得cat命令的幫助信息。命令的幫助信息。cat命令的命令的help信息信息有問題找有問題找“男子漢男子漢”!2.2.使用使用manman命令命令每個每個Shell命令都有一份稱為命令都有一份稱為man的聯(lián)機幫助信息。的聯(lián)機幫助信息。如果覺得如果覺得help幫助信息不夠詳細,可以使用幫助信息不夠詳細,可以使用man命令命令來查看任何命令的聯(lián)機幫助信息,只要將需要查詢的命來查看任何命令的聯(lián)機幫

37、助信息,只要將需要查詢的命令名作為令名作為man命令的參數(shù)即可。如命令的參數(shù)即可。如$man cat在閱讀聯(lián)機幫助細信息時,可以按在閱讀聯(lián)機幫助細信息時,可以按PageUp和和ageDown鍵鍵進行上下頁翻頁,按進行上下頁翻頁,按Q鍵鍵退出。退出。 cat命令的命令的man信息信息問題:問題:1、如何查看一個命令的幫助信息?、如何查看一個命令的幫助信息?1.111.11 文件保護文件保護Linux是個多用戶的操作系統(tǒng),每個用戶可擁有是個多用戶的操作系統(tǒng),每個用戶可擁有自自己的資源己的資源。在。在Linux中把用戶可使用的系統(tǒng)資源統(tǒng)一中把用戶可使用的系統(tǒng)資源統(tǒng)一處理成文件,并分類成處理成文件,并

38、分類成普通文件、目錄文件和特別普通文件、目錄文件和特別(設備)文件(設備)文件三類。為了保證用戶對系統(tǒng)資源的安全三類。為了保證用戶對系統(tǒng)資源的安全使用,使用,Linux提供了文件存取控制機制,以實現(xiàn)對文提供了文件存取控制機制,以實現(xiàn)對文件的保護。件的保護。 Linux的文件存取控制機制的基本原理的文件存取控制機制的基本原理(1) 把所有用戶劃分為三種身份:把所有用戶劃分為三種身份:文件主(文件主(user)、)、同組用戶(同組用戶(group)、)、其他用戶(其他用戶(other)。)。文件主即文件的創(chuàng)建者,對本文件具有最大的文件主即文件的創(chuàng)建者,對本文件具有最大的存存取權限。取權限。(2)每

39、種用戶對一個文件可擁有讀、寫和執(zhí)行的權限。每種用戶對一個文件可擁有讀、寫和執(zhí)行的權限。r(read,讀)權限:對,讀)權限:對普通文件普通文件而言,指用戶可打而言,指用戶可打開并讀取文件的內容;對開并讀取文件的內容;對目錄目錄而言,指用戶可瀏覽目錄而言,指用戶可瀏覽目錄的內容;對的內容;對I/O設備而言,則指用戶可使用設備進行數(shù)據(jù)設備而言,則指用戶可使用設備進行數(shù)據(jù)的輸入,的輸入,用數(shù)字表示為用數(shù)字表示為4;w(write,寫)權限:對,寫)權限:對普通文件普通文件而言,指用戶可而言,指用戶可修改文件的內容;對修改文件的內容;對目錄目錄而言,指用戶可刪除或移動目而言,指用戶可刪除或移動目錄內的

40、文件;對錄內的文件;對I/O設備而言,則指用戶可使用設備進行設備而言,則指用戶可使用設備進行數(shù)據(jù)的輸出,數(shù)據(jù)的輸出,用數(shù)字表示為用數(shù)字表示為2;x(execute,執(zhí)行):對普通文件而言,指用戶可,執(zhí)行):對普通文件而言,指用戶可執(zhí)行該文件;對目錄而言,指用戶可進入該目錄,執(zhí)行該文件;對目錄而言,指用戶可進入該目錄,用數(shù)用數(shù)字表示為字表示為1; (3)用用3組每組組每組3個共個共9個二進制位(個二進制位(bit)表示文件)表示文件的存取控制方式,依次是:文件主存取控制方式、同的存取控制方式,依次是:文件主存取控制方式、同組用戶存取控制方式、其他用戶存取控制方式。每組組用戶存取控制方式、其他用戶

41、存取控制方式。每組中的順序依次是:讀、寫、執(zhí)行。例如,某文件的存中的順序依次是:讀、寫、執(zhí)行。例如,某文件的存取控制方式設置為:取控制方式設置為:111101100 (對應的八進制數(shù)表示為(對應的八進制數(shù)表示為754 )表示文件主對該文件可讀、可寫、可執(zhí)行;同組用戶表示文件主對該文件可讀、可寫、可執(zhí)行;同組用戶可讀、可執(zhí)行;其他用戶只可讀??勺x、可執(zhí)行;其他用戶只可讀。用字符形式表示上述文件存取控制方式,就是用字符形式表示上述文件存取控制方式,就是rwxr-xr-在用戶創(chuàng)建一個文件時,在用戶創(chuàng)建一個文件時,Linux會提供會提供默認的文默認的文件存取控制方式件存取控制方式,文件主可根據(jù)需要使用

42、,文件主可根據(jù)需要使用shell命令或命令或圖形命令進行圖形命令進行修改修改。 只有只有命令命令,沒有菜單的,沒有菜單的文本編輯器文本編輯器大腕大腕編輯器版編輯器版周圍同事不是用周圍同事不是用vi就是就是Emacs,你要是用,你要是用UltraEdit,你都不好意思跟人家打招呼你都不好意思跟人家打招呼什么插件呀、語法高什么插件呀、語法高亮呀、拼寫檢查呀,能給它開的都給它開著,就是一亮呀、拼寫檢查呀,能給它開的都給它開著,就是一個字兒:酷!個字兒:酷!你說這么牛你說這么牛x一咚咚,怎么著學會也得小半年吧。一咚咚,怎么著學會也得小半年吧。半年?入門都遠著呢,能學會移動光標就不錯了,你半年?入門都遠

43、著呢,能學會移動光標就不錯了,你還別說耗不起,就這還只是左右移動!還別說耗不起,就這還只是左右移動!2.1 為什么要學習為什么要學習vim/vi ?修改與設定某些軟件的配置文件修改與設定某些軟件的配置文件,以及,以及為某些系統(tǒng)為某些系統(tǒng)管理工作編寫管理工作編寫shell腳本腳本,是,是Linux系統(tǒng)管理員的必不可系統(tǒng)管理員的必不可少的重要工作。少的重要工作。在在 Linux 的世界中,絕大部分的配置文件都是以的世界中,絕大部分的配置文件都是以 ASCII 的純文本形態(tài)存在,因此利用簡單的文本編輯軟的純文本形態(tài)存在,因此利用簡單的文本編輯軟件就能夠修改設定了。各種件就能夠修改設定了。各種Linu

44、x 發(fā)行版都提供有多種發(fā)行版都提供有多種文本編輯器軟件,如文本編輯器軟件,如emacs、pico、nano、joe、vi等等 ,但多把但多把vi作為默認的文本編輯器,而且作為默認的文本編輯器,而且vi 也是各種也是各種UNIX版本默認的文本編輯器。版本默認的文本編輯器。vi(visual interface)是個功能齊全的全屏幕)是個功能齊全的全屏幕文本文本編輯器編輯器,可以執(zhí)行輸入、插入、刪除、查找、替換等各,可以執(zhí)行輸入、插入、刪除、查找、替換等各種文本編輯操作。但是種文本編輯操作。但是vi不是一個排版軟件不是一個排版軟件,它不像,它不像Office Word那樣可以對字體、格式、段落等屬

45、性進行那樣可以對字體、格式、段落等屬性進行編排,它只是一個文本編輯器(相當于編排,它只是一個文本編輯器(相當于windows中的中的筆記事本),筆記事本),而且而且vivi只有命令,沒有菜單!只有命令,沒有菜單!vim 是是vi的升級版的升級版 ,完全兼容,完全兼容vi。vim 不但可以用不但可以用不同顏色顯示文字內容,還能夠進行諸如不同顏色顯示文字內容,還能夠進行諸如 shell 腳本、腳本、 C程序等程序的編輯,并具有許多的語法檢查功能,能程序等程序的編輯,并具有許多的語法檢查功能,能自動進行自動進行debug(程序調試),因此你可以將(程序調試),因此你可以將 vim 視視為一種程序編輯

46、器!此外,為一種程序編輯器!此外,vim還能夠對還能夠對Linux的一些的一些基礎配置文件進行語法檢查。各種較新版本的基礎配置文件進行語法檢查。各種較新版本的UNIX以以及幾乎所有的及幾乎所有的Linux發(fā)行版都已把發(fā)行版都已把vi升級為升級為vim了。了。對于對于UNIX/Linux來說,系統(tǒng)管理員必須來說,系統(tǒng)管理員必須至少掌握好一種文本編輯器,而至少掌握好一種文本編輯器,而vim/vi無疑無疑是首選!是首選!2.2 vi的工作模式的工作模式 vi有三種基本工作模式:有三種基本工作模式:命令模式、文本輸入模式命令模式、文本輸入模式和末行模式和末行模式。1. 命令模式命令模式這是進入這是進入

47、vi編輯器時的默認工作模式。在該模式下編輯器時的默認工作模式。在該模式下用戶可以輸入各種合法的用戶可以輸入各種合法的vi編輯命令,編輯命令,此時從鍵盤上輸此時從鍵盤上輸入的任何字符都被當作編輯命令來解釋入的任何字符都被當作編輯命令來解釋。需注意的是,。需注意的是,命令模式的命令是命令模式的命令是隱式命令隱式命令,即所輸入的命令并不在屏,即所輸入的命令并不在屏幕上顯示出來,若輸入的字符不是合法的幕上顯示出來,若輸入的字符不是合法的vi命令,命令,vi會會響鈴提示用戶。響鈴提示用戶。 2. 文本輸入模式文本輸入模式在該模式下,用戶輸入的任何字符都被在該模式下,用戶輸入的任何字符都被vi當作當作文件

48、文件內容內容保存起來,并將其顯示在屏幕上。保存起來,并將其顯示在屏幕上。3. 末行命令模式末行命令模式在命令模式下輸入冒號在命令模式下輸入冒號“:”便進入末行命令模式,便進入末行命令模式,它是命令模式的特例,主要用于它是命令模式的特例,主要用于輸入保存和退出命令。輸入保存和退出命令。與命令模式下的隱式命令不同的是,末行命令是與命令模式下的隱式命令不同的是,末行命令是顯式命顯式命令,且按回車鍵結束。令,且按回車鍵結束。末行命令執(zhí)行完后,末行命令執(zhí)行完后,vi自動回到自動回到命令模式。命令模式。 三種模式之間的切換:三種模式之間的切換:命令模式命令模式文本輸入模式:文本輸入模式:鍵入文本輸入命令(

49、如鍵入文本輸入命令(如a、i、o)。)。文本輸入模式文本輸入模式命令模式,按命令模式,按Esc鍵。鍵。命令模式命令模式末行模式,鍵入冒號。末行模式,鍵入冒號。 鳥哥癿私房菜館 命令模式命令模式文本輸入模式文本輸入模式末行命令模式末行命令模式vi filename 進入進入 輸入輸入 i a o 按按Esc鍵鍵 輸入輸入: 顯式命令按顯式命令按回車鍵結束回車鍵結束輸入輸入wqq退出退出vi/vim工作模式工作模式練習練習1、vi編輯器有哪三種工作模式,各種工作模式作用是什編輯器有哪三種工作模式,各種工作模式作用是什么?么?2、vi編輯器下如何三種工作模

50、式的切換?編輯器下如何三種工作模式的切換?文本輸入命令文本輸入命令(隱式命令)(隱式命令)命令命令功能功能a在光標后附加文本在光標后附加文本A在本行行末附加文本在本行行末附加文本i在光標前插入文本在光標前插入文本I在本行行首插入文本在本行行首插入文本o在光標下插入新行在光標下插入新行O在光標上插入新行在光標上插入新行輸入這些命令將進入文本輸入模式輸入這些命令將進入文本輸入模式光標定位命令光標定位命令命令命令功能功能h左移一個字符左移一個字符j下移一行下移一行k上移一行上移一行l(wèi)右左移一個字符右左移一個字符$移至行尾移至行尾0移至行首移至行首命令命令功能功能H移至屏幕上端移至屏幕上端M移至屏幕中

51、央移至屏幕中央L移至屏幕下端移至屏幕下端gg到第一行到第一行G到最后一行到最后一行nG移到第移到第n行行搜索命令搜索命令命令命令功能功能/str從光標處向后搜索字符串從光標處向后搜索字符串str?str從光標處向前搜索字符串從光標處向前搜索字符串strn重復上一搜索操作重復上一搜索操作練習練習1、用、用vi編輯器新建一個文件編輯器新建一個文件123,并在該文件中輸入文,并在該文件中輸入文本內容,并查找文本內容中的字符串本內容,并查找文本內容中的字符串“aa”.復習復習1、如何查看一個命令的幫助信息?、如何查看一個命令的幫助信息?2、將當前目錄下的所有內容輸出到文件、將當前目錄下的所有內容輸出到

52、文件123.txt的命令的命令是?是?3、命令、命令“$ ls |grep *.c|wc l”的作用是什么的作用是什么4、vi編輯器下如何三種工作模式的切換?編輯器下如何三種工作模式的切換?5、vi編輯器的搜索命令是編輯器的搜索命令是?刪除命令刪除命令命令命令功能功能X、x前后刪除一個字符前后刪除一個字符nx刪除光標所在處后刪除光標所在處后n個字符個字符dd刪除光標所在行,刪除光標所在行,ndd刪除刪除n行行dG刪除光標所在行到末尾刪除光標所在行到末尾D刪除光標所在處到行末的內容刪除光標所在處到行末的內容:n1,n2d刪除指定范圍的內容刪除指定范圍的內容復制與剪切命令復制與剪切命令命令命令功能功能yy、Y復制當前行復制當前行nyy、nY復制當前行以下復制當前行以下n行行dd剪切當前行剪切當前行ndd剪切當前行以下剪切當前行以下n行行p、P粘貼在當前光標所在行下或行上粘貼在當前光標所在行下或行上保存與退出命令保存與退出命令(末行命令)(末行命令)命令命令功能功能w保存修改保存修改w filename另存為另存為wq保存并退出保存并退出q!放棄修改并退出放棄修改并退出Ctrl+Z(快捷鍵)保存并退出(快捷鍵)保存并退出練習練習1、將剛才編輯的文件保存并退出。、將剛

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論