《LINUX操作系統(tǒng)》實(shí)驗(yàn)指導(dǎo)書

上傳人:仙*** 文檔編號(hào):28334900 上傳時(shí)間:2021-08-26 格式:DOC 頁(yè)數(shù):58 大?。?.17MB
收藏 版權(quán)申訴 舉報(bào) 下載
《LINUX操作系統(tǒng)》實(shí)驗(yàn)指導(dǎo)書_第1頁(yè)
第1頁(yè) / 共58頁(yè)
《LINUX操作系統(tǒng)》實(shí)驗(yàn)指導(dǎo)書_第2頁(yè)
第2頁(yè) / 共58頁(yè)
《LINUX操作系統(tǒng)》實(shí)驗(yàn)指導(dǎo)書_第3頁(yè)
第3頁(yè) / 共58頁(yè)

下載文檔到電腦,查找使用更方便

15 積分

下載資源

還剩頁(yè)未讀,繼續(xù)閱讀

資源描述:

《《LINUX操作系統(tǒng)》實(shí)驗(yàn)指導(dǎo)書》由會(huì)員分享,可在線閱讀,更多相關(guān)《《LINUX操作系統(tǒng)》實(shí)驗(yàn)指導(dǎo)書(58頁(yè)珍藏版)》請(qǐng)?jiān)谘b配圖網(wǎng)上搜索。

1、Linux 操作系統(tǒng) 實(shí) 驗(yàn) 指 導(dǎo) 書 徐州師范大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院 2009 年 11 月 前 言 Linux 操作系統(tǒng)實(shí)驗(yàn)指導(dǎo)書 根據(jù)實(shí)驗(yàn)教學(xué)的需要所編寫,主 要包括 Linux 操作系統(tǒng)基礎(chǔ)以下幾個(gè)方面的內(nèi)容:系統(tǒng)安裝、常用 命令、vi 編輯器使用、shell 編程、Samba 服務(wù)器配置和企業(yè)小型局 域網(wǎng)的組建等。 每個(gè)實(shí)驗(yàn),都給出了實(shí)驗(yàn)?zāi)康?、?shí)驗(yàn)要求和實(shí)驗(yàn)內(nèi)容。實(shí)驗(yàn)內(nèi) 容分為示例、必做題和選做題三種形式。通過對(duì)示例中內(nèi)容的上機(jī) 練習(xí),加深學(xué)生對(duì)理論課程中所學(xué)內(nèi)容的理解,并幫助學(xué)生理解實(shí) 驗(yàn)的要求;學(xué)生通過實(shí)現(xiàn)必做題的內(nèi)容,提高自己的動(dòng)手能力,這 部分的內(nèi)容是要求每一位學(xué)生都必須

2、完成的;選做題是為學(xué)有余力 的同學(xué)準(zhǔn)備的,選做題目完成較好的學(xué)生將在期末平時(shí)成績(jī)中獲得 適當(dāng)?shù)募臃知?jiǎng)勵(lì)。 實(shí)驗(yàn)一、實(shí)驗(yàn)五和實(shí)驗(yàn)六為學(xué)生課外實(shí)驗(yàn),另外,實(shí)驗(yàn)二、實(shí) 驗(yàn)三和實(shí)驗(yàn)四含有部分課外實(shí)驗(yàn)內(nèi)容,有利于課堂實(shí)驗(yàn)課時(shí)不夠, 但是課程須要實(shí)驗(yàn)鞏固的要求。本書不僅可以作為普通院校學(xué)生的 Linux 操作系統(tǒng)基礎(chǔ)上機(jī)實(shí)習(xí)指導(dǎo)教材,也可作為廣大讀者朋友自學(xué) Linux 操作系統(tǒng)基礎(chǔ)的實(shí)用教程。 由于時(shí)間倉(cāng)促以及水平有限,錯(cuò)誤與不足之處難免存在,敬請(qǐng) 使用者給與批評(píng)指正! I 目 錄 實(shí)驗(yàn)一 LINUX 操作系統(tǒng)的安裝( 4 課時(shí)) .1 一、實(shí)驗(yàn)?zāi)康?.1 二、實(shí)驗(yàn)要求 .1 三、預(yù)備知識(shí) .1 四、實(shí)

3、驗(yàn)內(nèi)容 .2 五、課后思考 .16 實(shí)驗(yàn)二 LINUX 的常用命令( 6 課時(shí)) .17 一、實(shí)驗(yàn)?zāi)康?.17 二、實(shí)驗(yàn)要求 .17 三、預(yù)備知識(shí) .17 四、實(shí)驗(yàn)內(nèi)容 .18 五、課后思考 .29 實(shí)驗(yàn)三 LINUX 的 VI 編輯器使用(2 課時(shí)) .30 一、實(shí)驗(yàn)?zāi)康?.30 二、實(shí)驗(yàn)要求 .30 三、預(yù)備知識(shí) .30 四、實(shí)驗(yàn)內(nèi)容 .32 五、課后思考 .33 實(shí)驗(yàn)四 LINUX 的 SHELL 編程(6 課時(shí)) .34 一、實(shí)驗(yàn)?zāi)康?.34 二、實(shí)驗(yàn)要求 .34 三、預(yù)備知識(shí) .34 四、實(shí)驗(yàn)內(nèi)容 .35 五、課后思考 .45 實(shí)驗(yàn)五 SAMBA 服務(wù)器的配置(2 課時(shí)) .46 一

4、、實(shí)驗(yàn)?zāi)康?.46 二、實(shí)驗(yàn)要求 .46 三、預(yù)備知識(shí) .46 四、實(shí)驗(yàn)內(nèi)容 .47 五、課后思考 .48 實(shí)驗(yàn)六 企業(yè)小型局域網(wǎng)的組建(10 課時(shí)) .49 一、實(shí)驗(yàn)?zāi)康?.49 二、實(shí)驗(yàn)要求 .49 三、實(shí)驗(yàn)內(nèi)容 .49 四、課后思考 .50 參考文獻(xiàn) .51 1 實(shí)驗(yàn)一 Linux 操作系統(tǒng)的安裝(4 課時(shí)) 一、實(shí)驗(yàn)?zāi)康?1.了解 Linux 發(fā)行版本的不同,理解 Linux 內(nèi)核和 Linux 發(fā)行版本的區(qū)別。 2.掌握 Linux 的安裝過程,熟悉 Linux 操作系統(tǒng)安裝過程中的設(shè)定選項(xiàng)的含義,掌 握為安裝進(jìn)行硬盤分區(qū)的方法。 3.掌握 VMWare 軟件的使用,在單獨(dú)的虛擬機(jī)中

5、完成 Linux 的安裝。 4.了解在已安裝 Windows 系統(tǒng)的虛擬機(jī)上安裝 Linux,解決兩個(gè)系統(tǒng)選擇啟動(dòng)的問 題。 5.了解一些 Linux 發(fā)行版本的安裝過程,比較其中的區(qū)別。 二、實(shí)驗(yàn)要求 1.基本層次:在單獨(dú)的虛擬機(jī)中完成 Linux 的安裝,完成為 Linux 安裝進(jìn)行硬盤分 區(qū)的方法。 2.提高層次:在已安裝 Windows XP 操作系統(tǒng)的虛擬機(jī)上安裝 Linux,解決兩個(gè)系 統(tǒng)選擇啟動(dòng)的問題。 三、預(yù)備知識(shí) (一)虛擬機(jī) VMWare 的介紹 虛擬機(jī)是指通過軟件模擬的具有完整硬件系統(tǒng)功能的、運(yùn)行在一個(gè)完全隔離環(huán)境 中的完整計(jì)算機(jī)系統(tǒng)。通過虛擬機(jī)軟件,你可以在一臺(tái)物理計(jì)算

6、機(jī)上模擬出一臺(tái)或多 臺(tái)虛擬的計(jì)算機(jī),這些虛擬機(jī)完全就像真正的計(jì)算機(jī)那樣進(jìn)行工作,例如你可以安裝 操作系統(tǒng)、安裝應(yīng)用程序、訪問網(wǎng)絡(luò)資源等等。 虛擬機(jī)是在一個(gè)操作系統(tǒng)(稱為宿主操作系統(tǒng)-Host OS)上的另一個(gè)操作系統(tǒng)(稱 為客戶操作系統(tǒng)-Guest OS) 。Host OS 和 Guest OS 之間交換數(shù)據(jù)的方式有:共享文件 夾和通過網(wǎng)絡(luò)傳輸。 虛擬機(jī)的用途有: 1.程序測(cè)試。由于 Host OS 和 Guest OS 是兩個(gè)獨(dú)立的操作系統(tǒng),因此可以在 Guest OS 上進(jìn)行程序測(cè)試,以免損壞 Host OS; 2.網(wǎng)絡(luò)實(shí)驗(yàn)或網(wǎng)絡(luò)程序開發(fā)。通常進(jìn)行網(wǎng)絡(luò)實(shí)驗(yàn)或開發(fā)網(wǎng)絡(luò)程序至少需要兩臺(tái) PC,

7、一臺(tái)安裝服務(wù)器程序,一臺(tái)客戶程序。我們可以使用 Host OS 和 Guest OS 上分 別安裝服務(wù)程序和客戶程序,從而僅僅使用一臺(tái) PC; 3.操作系統(tǒng)安裝和實(shí)驗(yàn),通常作操作系統(tǒng)的實(shí)驗(yàn)要求對(duì)操作系統(tǒng)進(jìn)行全面的配置, 這樣可能會(huì)損壞操作系統(tǒng),通過在 Guest OS 上進(jìn)行操作可以避免重新安裝 Host OS; 目前 PC 上的虛擬機(jī)軟件有下述三個(gè): 1.VMWare:是一個(gè) “虛擬 PC”軟件.它使你可以在一臺(tái)機(jī)器上同時(shí)運(yùn)行二個(gè)或更 多 Windows、 DOS、LINUX 系統(tǒng)。 (http:/www.VMW) 2.Virtual PC:是一個(gè)虛擬機(jī)軟件,可以在 Mac OS 和 Win

8、dows 操作系統(tǒng)上虛擬 x86 電腦,并在其中安裝運(yùn)行操作系統(tǒng)。原來由 Connectix 公司開發(fā),微軟公司于 2003 年收購(gòu)該軟件,并改稱為 Microsoft Virtual PC。 ( http:/) 3.Virtual Box:是由 Sun Microsystems 公司出品的軟件,原由德國(guó) innotek 公司開 發(fā)。2008 年 2 月 12 日,Sun Microsystems 收購(gòu),新版改叫 Sun xVM Virtual Box。 Virtual Box 是開源軟件。 (http:/www.virtualbox.org/) 本課程實(shí)驗(yàn)我們只使用 VMWare。 2 (二

9、)Linux 的發(fā)行版介紹 Linux 是一套免費(fèi)使用和自由傳播的類 Unix 操作系統(tǒng),它主要用于基于 x86 系列 CPU 的計(jì)算機(jī)上。 Linux 發(fā)行版 (也被叫做 GNU/Linux 發(fā)行版) 是基于 Linux 內(nèi)核的類 Unix 操作系 統(tǒng)。Linux 發(fā)行版通常包含了包括桌面環(huán)境、辦公套件、媒體播放器、數(shù)據(jù)庫(kù)等應(yīng)用軟 件。這些操作系統(tǒng)通常由 Linux 內(nèi)核、以及來自 GNU 計(jì)劃的大量的函式庫(kù),和基于 X Window 的圖形界面。有些發(fā)行版考慮到容量大小而沒有預(yù)裝 X Window,而使用更加 輕量級(jí)的軟件?,F(xiàn)在有超過 300 個(gè) Linux 發(fā)行版。這些發(fā)行版可以分為商業(yè)

10、發(fā)行版, 比如 Fedora (Red Hat), openSUSE (Novell),Ubuntu (Canonical 公司),和 Mandriva Linux,和社區(qū)發(fā)行版,它們由自由軟件社區(qū)提供支持,如 Debian 和 Gentoo,也有發(fā) 行版既不是商業(yè)發(fā)行版也不是社區(qū)發(fā)行版,其中最有名的是 Slackware。 本課程實(shí)驗(yàn)我們使用 Fedora。 四、實(shí)驗(yàn)內(nèi)容 (一)必做題 在本次實(shí)驗(yàn)中,完成在 VMWare 下 Guest OS 的安裝。設(shè)定機(jī)器中的操作系統(tǒng)為 Windows XP(Host OS) ,且已經(jīng)裝好了 VMWare,我們需要安裝的 Guest OS 為 Fedor

11、a Core 6。 1.添加虛擬機(jī) 說明:在以下添加虛擬機(jī)過程中,如果沒有安裝過程的說明,均使用默認(rèn)方式。 圖 1-1 添加虛擬機(jī) 如圖 1-1,在窗口中選擇“新建虛擬機(jī)”或點(diǎn)擊菜單“文件”“新建”“虛擬 機(jī)” ,建立虛擬機(jī)。 3 圖 1-2 新建虛擬機(jī) 如圖 1-2,選擇配置方式:“Typical”為典型方式,也是缺省方式,在創(chuàng)建過程中 將加載標(biāo)準(zhǔn)硬件設(shè)備和默認(rèn)設(shè)置;“Custom”為手工方式,用戶在這種方式下可以對(duì) 設(shè)備和內(nèi)存進(jìn)行修改。不熟悉配置方式的同學(xué)可選擇“Typical”方式,本指導(dǎo)書選擇 “Custom”方式。 圖 1-3 選擇客戶操作系統(tǒng) 如圖 1-3,設(shè)置操作系統(tǒng)??蛇x的操作

12、系統(tǒng)從 MSDOS 一直到 Windows Server 4 2008。這里選擇 Red Hat Linux。 圖 1-4 設(shè)置虛擬機(jī)名字 如圖 1-4,設(shè)置虛擬計(jì)算機(jī)文件所在的路徑。在 VMWare 中,一臺(tái)虛擬機(jī)的硬盤 其實(shí)是用磁盤文件模擬的,這里需要選擇一個(gè)剩余空間較大的分區(qū)(最好剩余 6G 以上) 中的一個(gè)目錄。 圖 1-5 設(shè)置虛擬機(jī)處理器數(shù)量 5 圖 1-6 設(shè)置虛擬機(jī)內(nèi)存大小 如圖 1-5、圖 1-6,設(shè)置虛擬機(jī)處理器數(shù)量和虛擬機(jī)內(nèi)存大小。這里設(shè)定一個(gè)處理 器,內(nèi)存設(shè)定不得超過推薦的范圍,建議可能的話,設(shè)定內(nèi)存大于 512,這樣虛擬機(jī) Guest OS 安裝和運(yùn)行都較快。 圖 1

13、-7 設(shè)置網(wǎng)絡(luò)連接方式 如圖 1-7,選擇網(wǎng)絡(luò)連接方式。虛擬計(jì)算機(jī)與宿主計(jì)算機(jī)之間可以進(jìn)行通訊,共有 四種選擇方式,由于學(xué)校設(shè)置了上網(wǎng)認(rèn)證,且限制多 IP 登陸,因此,如果在機(jī)房作此 6 實(shí)驗(yàn),暫時(shí)選擇“NAT”方式,以免認(rèn)證軟件斷開 Host OS 的網(wǎng)絡(luò)鏈接。 圖 1-8 設(shè)置硬盤類型 如圖 1-8,硬盤類型提供兩種,分別是 IDE 類型和 SCSI 類型,其中 SCSI 類型為 默認(rèn)類型。由于有些早期 Linux 發(fā)行版不支持 SCSI 類型硬盤,因此選擇 IDE 硬盤類型。 圖 1-9 設(shè)置硬盤大小 7 如圖 1-9,硬盤大小使用默認(rèn)的 8G,另外,為了便于磁盤文件存放管理,選擇將 磁

14、盤分割成 2G 文件大小。 圖 1-10 虛擬機(jī)創(chuàng)建完成 如圖 1-10,虛擬機(jī)創(chuàng)建完成! 2.安裝 Linux 系統(tǒng) 說明:在以下添加虛擬機(jī)過程中,如果沒有安裝過程的說明,均使用默認(rèn)方式。 在剛添加的虛擬機(jī)中,查看并修改該虛擬機(jī)的設(shè)備。通過設(shè)備窗口中雙擊相應(yīng)設(shè) 備,可以修改選擇設(shè)備的配置,或通過菜單“虛擬機(jī)”“設(shè)置.” ,在彈出的對(duì)話框 中可以對(duì)虛擬機(jī)內(nèi)存、磁盤、光驅(qū)、軟盤、網(wǎng)卡、USB 設(shè)備、鼠標(biāo)、聲卡等進(jìn)行設(shè)置。 如圖 1-11。 8 圖 1-11 查看并修改虛擬機(jī)的設(shè)備 設(shè)置安裝光盤為 ISO 文件(該文件包含了安裝光盤的內(nèi)容,安裝光盤可以從網(wǎng)絡(luò) 下載,或由任課老師說明下載地點(diǎn)) 。當(dāng)

15、然,用物理光盤也可以。如圖 1-11。 點(diǎn)擊虛擬機(jī)啟動(dòng)按鈕,啟動(dòng)該虛擬機(jī)。系統(tǒng)引導(dǎo)后,進(jìn)入安裝界面。 圖 1-12 選擇 Linux 安裝模式 如圖 1-12,進(jìn)入系統(tǒng)安裝模式選擇,如果設(shè)定的虛擬機(jī)內(nèi)存大于 256M,此處可以 選擇“圖形模式”安裝。 9 圖 1-13 提示是否進(jìn)行安裝介質(zhì)檢測(cè) 如圖 1-13,安裝過程詢問是否進(jìn)行安裝介質(zhì)的檢測(cè),為了節(jié)省時(shí)間,此處可以選 擇跳過檢測(cè)。 圖 1-14 硬盤分區(qū)設(shè)置 如圖 1-14,進(jìn)行硬盤分區(qū)設(shè)置,由于是虛擬機(jī),選擇了自動(dòng)分區(qū),因此,此處均 選擇默認(rèn)即可。 10 圖 1-15 網(wǎng)絡(luò)設(shè)置 如圖 1-15,此處可以跳過,不進(jìn)行網(wǎng)絡(luò)設(shè)置。 圖 1-16

16、 根用戶口令設(shè)置 如圖 1-16,設(shè)置根用戶的口令,此口令務(wù)必記住,這是所裝系統(tǒng)的超級(jí)用戶口令。 11 圖 1-17 安裝選項(xiàng)選擇 如圖 1-17,對(duì)于需要有選擇安裝相應(yīng)的服務(wù),可以選擇“軟件開發(fā)”和“網(wǎng)絡(luò)服 務(wù)器” ,并選擇“現(xiàn)在定制” 。定制如圖 1-18。 圖 1-18 定制安裝軟件 12 圖 1-19 進(jìn)入系統(tǒng)安裝過程 如圖 1-19,系統(tǒng)進(jìn)入安裝過程,在此過程中根據(jù)提示,進(jìn)行幾張安裝盤的彈出和 插入(如圖 1-20) 。 圖 1-20 安裝過程中切換安裝光盤 13 圖 1-21 系統(tǒng)已經(jīng)安裝完成 如圖 1-21,系統(tǒng)已經(jīng)安裝完成。點(diǎn)擊“重新引導(dǎo)” ,進(jìn)行系統(tǒng)安裝完成后的第一次 引導(dǎo)。

17、 圖 1-22 第一次引導(dǎo)的向?qū)?如圖 1-22,系統(tǒng)第一次引導(dǎo)后,進(jìn)入此歡迎界面。 14 圖 1-23 防火墻設(shè)置 如圖 1-23,設(shè)置系統(tǒng)的防火墻,對(duì)于一些需要提供的服務(wù),使該服務(wù)為信任服務(wù)。 圖 1-24 系統(tǒng)日期和時(shí)間設(shè)置 15 如圖 1-24,設(shè)置系統(tǒng)的日期和時(shí)間。 圖 1-25 普通用戶創(chuàng)建 如圖 1-25,創(chuàng)建一個(gè)普通用戶賬號(hào),供平時(shí)使用。這樣避免了一直使用根用戶登 錄,保證了系統(tǒng)的安全性。 圖 1-26 聲卡設(shè)定 如圖 1-26,此處設(shè)定聲卡,無需做其他改變。 16 圖 1-27 系統(tǒng)登錄 至此,系統(tǒng)的第一次引導(dǎo)設(shè)定完畢。如圖 1-27,輸入用戶名進(jìn)行登錄驗(yàn)證,如果 登錄完成,

18、即可進(jìn)入 Linux 系統(tǒng)。 【注意】組合鍵 Ctrl-Alt-F1 至 F6 可以訪問另外的幾個(gè)字符界面的登錄界面,從而 使用 Fedora 的字符界面,這幾個(gè)界面叫做虛擬控制臺(tái),使用組合鍵 Ctrl-Alt-F7 還可 以返回到圖形界面。但是在虛擬機(jī)中使用組合鍵 Ctrl-Alt-F1 至 F6 時(shí)不能切換虛擬控 制臺(tái),原因是在 VMWare 中,Ctrl-Alt 是用來激活或釋放鼠標(biāo)的。因此,需要通過菜 單“編輯”“參數(shù)”“Hot keys”,修改默認(rèn) Hot keys 由 Ctrl-Alt 為 Ctrl-Alt-Shift, 再次啟動(dòng)虛擬機(jī)后設(shè)置啟用。 (二)選做題 在自己的機(jī)器中,實(shí)

19、現(xiàn)硬盤安裝 Fedora,具體可參考如下步驟: 1.建立分區(qū),以便在此分區(qū)安裝 Linux,在 Windows 里-磁盤管理,騰出一塊磁盤 空間,為“可用空間”即可。 2.把 Fedora 安裝鏡像文件( .iso) ,拷入 Windows 某一盤符根目錄下(如 E:),注意 該分區(qū)應(yīng)該是 Fat32。把第一個(gè)鏡像文件中的 initrd.img 和 vmlinuz 兩個(gè)文件解壓縮,在 該分區(qū)建立一目錄,把上述兩個(gè)文件拷入該目錄(如 E:linux) 。 3.使用 WinGrub 軟件,然后 Tools-Install Grub,點(diǎn) Systerm Device ,然后在右邊 的選擇框中選 C

20、,然后再點(diǎn) BOOT FROM BOOT.INI 就好,如果不行就換;在 Title 中寫入 Linux_Install(提示而已) 然后在 Time OUT 寫上 20,點(diǎn)擊 Install 按鈕,這 樣 grub 就安裝好了,配置文件是 c:bootgrubMENU.LST 4.配置 MENU.LST 文件,首先用 WinGrub 軟件查看分區(qū)情況,Tools-Partition List。修改 MENU.LST 文件。如下 timeout 20 17 title Windows at (hd0,0) root (hd0,0) chainloader +1 title fc4install

21、 root (hd0,5) kernel (hd0,5)/linux/vmlinuz initrd (hd0,5)/linux/initrd.img 說明如下:hd0:表示第一塊 IDE 硬盤,如果是移動(dòng)硬盤則是 hda。hd0 后面的數(shù)字 表示第幾塊分區(qū),從 0 開始,如果不清楚,用 WinGrub 軟件查看分區(qū)的情況設(shè)置。如 果還有其他鏡像安裝,可以繼續(xù)加的。 5.安裝 Fedore 開始,啟動(dòng)時(shí)候出現(xiàn)選擇項(xiàng) Windows 和 fc4install,選擇 fc4install 后, 視同光盤安裝。有幾點(diǎn)不同: (1)在Installation Method選擇“Hard drive”,

22、Select Partition中, Directory holding images:選入“/dev/sda6” (我把鏡像文件放著 E 盤,這里根據(jù)具體情 況填寫) 。 (2)在選定驅(qū)動(dòng)上刪除 Liunx 分區(qū)并創(chuàng)建默認(rèn)的分區(qū)結(jié)構(gòu)。 6.安裝完畢,系統(tǒng)會(huì)直接啟動(dòng)到 Linux,需要進(jìn)入 Linux 修改文件 vi /boot/grub/menu.lst。 五、課后思考 1.如何實(shí)現(xiàn)多操作系統(tǒng)啟動(dòng)? 2.為什么要設(shè)置交換分區(qū)?大小又應(yīng)該如何設(shè)置? 3.Linux 中的硬盤大小應(yīng)該如何劃分? 4.安裝 Linux 需要幾個(gè)分區(qū)?它們的作用是什么? 18 實(shí)驗(yàn)二 Linux 的常用命令(6 課時(shí)

23、) 一、實(shí)驗(yàn)?zāi)康?1.了解 Linux 字符界面的操作特點(diǎn)。 2.驗(yàn)證 Linux 命令的用途。 3.掌握 Linux 的基本操作、幫助。 二、實(shí)驗(yàn)要求 1.了解 Linux 字符界面的操作特點(diǎn)。 2.掌握使用 telnet 方式或使用 putty 等工具登錄 Linux 服務(wù)器。 3.掌握 Linux 命令的使用方法。 4.掌握 Linux 命令幫助的查看方法。 5.掌握 Linux 中文件和目錄操作命令。 6.了解 Linux 常用的磁盤操作命令。 7.掌握 Linux 中的鏈接文件操作。 8.了解 Linux 中進(jìn)程管理命令。 9.掌握 Linux 中打包和壓縮命令。 三、預(yù)備知識(shí) (一

24、)Shell 命令簡(jiǎn)介 操作系統(tǒng)具備 5 個(gè)主要功能:處理機(jī)管理、存儲(chǔ)器管理、設(shè)備管理、文件管理和 提供友好的用戶接口。前 4 個(gè)功能是操作系統(tǒng)對(duì)計(jì)算機(jī)硬件系統(tǒng)的管理功能,操作系 統(tǒng)通過用戶接口與用戶交互,以使用計(jì)算機(jī)的所有資源。 操作系統(tǒng)提供的用戶接口主要有 3 種:命令接口、程序接口以及圖形用戶接口。 其中,命令接口又稱作命令行解釋程序,或者叫 Shell,它通過字符界面(稱作命令行) 接受用戶輸入的命令,并把操作系統(tǒng)的響應(yīng)以字符方式顯示給用戶;程序接口又叫做 系統(tǒng)調(diào)用,是通過代碼庫(kù)的方式提供給用戶程序(比如 C 語(yǔ)言程序) ,以控制和訪問 計(jì)算機(jī)資源;圖形用戶接口是基于圖標(biāo)、窗口和菜單等

25、圖形界面,用戶以鼠標(biāo)、鍵盤、 或其他設(shè)備,通過控制這些圖形界面,來完成對(duì)計(jì)算機(jī)資源的控制和訪問。大多數(shù)的 操作系統(tǒng)都提供這 3 種用戶接口。 本實(shí)驗(yàn)主要討論 Linux 操作系統(tǒng)的命令接口,因?yàn)檫@個(gè)接口消耗資源少、響應(yīng)直 接、查錯(cuò)容易,所以如果 Linux 作為服務(wù)器的操作系統(tǒng),一般只安裝這個(gè)接口。Linux 的命令接口是通過用戶輸入的字符串(稱作“Shell 命令” ,簡(jiǎn)稱為“命令” )來接收用 戶的控制的。 Shell 命令一般由兩個(gè)部分構(gòu)成:命令名和參數(shù),參數(shù)在一個(gè) Shell 命令中一般是 可選項(xiàng),一個(gè)命令也可能有多個(gè)參數(shù)。 (二)有關(guān)常用命令 對(duì)于以下列舉的命令,請(qǐng)?jiān)谡n余時(shí)間,通過學(xué)

26、習(xí)教材、參考書或查閱網(wǎng)絡(luò)資源進(jìn) 行了解命令的使用。 1.關(guān)機(jī)和重啟相關(guān)指令; 2.幫助命令 man 的使用; 3.pwd、ls、mkdir、rmdir、cd、mv、rm 、cp 等文件目錄管理命令; 4.df、du 、fdisk、mount 和 umount 等磁盤管理命令; 5.chmod 和 chown 等文件權(quán)限管理命令; 19 6.gzip、gunzip、tar 與文件壓縮打包命令; 7.ln 等鏈接文件命令; 8.useradd(adduser)、userdel、groupadd、groupdel、passwd、who 、id、whoami、su 等用戶和組管理命令; 9.rpm 軟

27、件包管理命令; 10.其他系統(tǒng)命令,如 date、cal 等。 四、實(shí)驗(yàn)內(nèi)容 (一)系統(tǒng)登錄、注銷和關(guān)機(jī) 1.登錄 在本指導(dǎo)書中,Linux 服務(wù)器的 IP 地址為 192.168.148.3,大家在具體做實(shí)驗(yàn)的時(shí) 候,服務(wù)器地址由任課老師提供。在客戶機(jī)中遠(yuǎn)程登錄 Linux 服務(wù)器,可采用 Windows 中的 telnet 命令或?qū)S玫?Putty 工具。如圖 2-1 和圖 2-2 為使用 telnet 命令登 錄服務(wù)器,圖 2-3 和圖 2-4 為使用 Putty 工具登錄服務(wù)器。 圖 2-1 Window XP 中運(yùn)行 telnet IP 地址命令 圖 2-2 運(yùn)行 telnet 后出

28、現(xiàn)的登錄窗口 20 圖 2-3 使用 Putty 工具進(jìn)行登錄 圖 2-4 使用 Putty 工具登錄窗口 圖 2-5 第一次登錄檢查用戶環(huán)境 圖 2-5 中,為用戶第一次登錄服務(wù)器的時(shí)候,檢查一下自己的家目錄和當(dāng)前操作 用戶,檢查是否和自己的登錄名相同,以免在批量創(chuàng)建用戶的時(shí)候,建立錯(cuò)誤,影響 以后的學(xué)生實(shí)驗(yàn)。 21 2.注銷 用戶在登錄后,在命令提示符下,只要輸入命令“l(fā)ogout”或“exit”即可退出登 錄。 3.關(guān)機(jī) (由于服務(wù)器權(quán)限等問題,以下“關(guān)機(jī)”部分實(shí)驗(yàn)請(qǐng)?jiān)谧约簷C(jī)器上練習(xí)) (1)分別使用以下幾條關(guān)閉計(jì)算機(jī)的指令,體會(huì)關(guān)機(jī)時(shí)執(zhí)行的區(qū)別: ashutdown h now bsh

29、utdown h +3 cshutdown h 12:00 dinit 0 ehalt p fhalt h (2)分別使用以下幾條關(guān)閉計(jì)算機(jī)的指令,體會(huì)關(guān)機(jī)時(shí)執(zhí)行的區(qū)別: ashutdown r now bshutdown r +3 cshutdown r 11:00 dreboot einit 6 (二)在線幫助系統(tǒng)使用 Linux 系統(tǒng)提供在線幫助 man page 來對(duì)用戶使用 Shell 命令提供幫助,man page 的 語(yǔ)法為: man Shell 命令名 Linux 系統(tǒng)的在線幫助系統(tǒng)還包括 info page,使用方法與 man page 相同,語(yǔ)法為: info Shell

30、命令名 如圖 2-6,是在 Linux 的命令提示符下,輸入 man ls 并回車所查看到的 ls 命令的幫 助,使用 pagedown 和 pageup 按鈕可以上下翻屏,另外,輸入 q,可以退出幫助狀態(tài)返 回命令輸入接口。 22 圖 2-6 使用 man ls 查看 ls 命令的幫助 (三)文件與目錄管理 1.基本操作類 (1)使用 pwd 命令查看當(dāng)前用戶目錄,若不是,使用 cd 命令切換到用戶主目錄; (2)使用 ls 命令查看當(dāng)前用戶主目錄下的內(nèi)容; (3)使用 mkdir 命令在用戶主目錄中創(chuàng)建三個(gè)目錄,分別為 Dir1、Dir2、Dir3; (4)使用 rmdir 命令刪除 Di

31、r3 目錄; (5)使用 cd 命令進(jìn)入 Dir1 目錄; (6)使用 mv 命令將 Dir2 目錄移動(dòng)至 Dir1 目錄; (7)使用 rm 指令刪除 Dir2 目錄; 23 (8)使用 cp 命令將用戶主目錄下的 .bashrc 文件拷貝至 Dir1 目錄。 2.文件權(quán)限類 使用 chmod 指令,在 Linux 系統(tǒng)中設(shè)置指定文件的權(quán)限。 (說明:以下權(quán)限實(shí)驗(yàn), 可以通過單雙號(hào)同學(xué)合作驗(yàn)證某些權(quán)限,系統(tǒng)設(shè)定每位同學(xué)賬號(hào)的時(shí)候,將每個(gè)班的 奇偶數(shù)學(xué)號(hào)的同學(xué)設(shè)定為不同的兩組。 ) (1)使用符號(hào)法設(shè)置文件權(quán)限 a在用戶主目錄下創(chuàng)建目錄 Dir2、Dir3 ; b使用 ls l 命令查看以上兩

32、個(gè)目錄的相關(guān)權(quán)限; c使用 chmod 命令,設(shè)置 Dir2 目錄的權(quán)限為所有人都擁有所有權(quán)限; $ 24 d使用 chmod 命令,設(shè)置 Dir3 目錄的權(quán)限為屬主擁有讀寫權(quán)限,組成員有讀和 執(zhí)行權(quán)限,其他用戶沒有任何權(quán)限。 (2)使用八進(jìn)制數(shù)字法設(shè)置文件權(quán)限 a在用戶主目錄下創(chuàng)建目錄 Dir4、Dir5 ; b使用 ls l 命令查看以上兩個(gè)目錄的相關(guān)權(quán)限; c使用 chmod 命令,設(shè)置 Dir4 目錄僅為屬主擁有所有權(quán)限,其他用戶沒有任何 權(quán)限; d使用 chmod 命令,設(shè)置 Dir5 目錄的權(quán)限為屬主擁有所有權(quán)限,組成員有讀和 執(zhí)行權(quán)限,其他用戶沒有任何權(quán)限。 (3)使用 chow

33、n 命令,設(shè)置文件的屬主 a創(chuàng)建目錄 Dir6; b使用 ls l 命令查看剛創(chuàng)建目錄的相關(guān)權(quán)限; $ $ 25 c使用 chown 命令將 Dir6 文件的屬主更改為合作的同學(xué)。 3.文件內(nèi)容顯示類 (1)將/tmp 目錄下 a.txt 和 b.txt(這兩個(gè)文件及內(nèi)容,已經(jīng)由任課老師準(zhǔn)備好) 拷貝到用戶目錄下; (2)使用 cat 命令將用戶主目錄下的 a.txt 和 b.txt 連接生成 d.txt; (3)使用 more 命令以每頁(yè) 8 行的格式顯示文件 d.txt; (4)使用 lessheadtail 命令顯示文件 d.txt 的最后 2 行,頭 2 行。 4.文件(內(nèi)容)查找 (

34、1)使用 grep 命令在文件 d.txt 中搜索模式“l(fā)inux ”; (2)使用 grep 命令在文件 d.txt 搜索并顯示所有包含 kernel 語(yǔ)句的代碼行; (3)使用 locate 命令在根目錄下查找相關(guān)字 linux; $ $ 26 (4)自學(xué) fgrep 和 egrep 命令。 5.文件(名)查找 使用 find 命令完成如下操作: (1)寫出在/usr/bin 下搜索find文件,搜索普通類型文件的指令; (2)寫出在根目錄下查找在系統(tǒng)中最后 10 分鐘訪問的文件; (3)寫出在根目錄下查找在系統(tǒng)中最后 48 小時(shí)訪問的文件; (4)寫出在根目錄下查找在系統(tǒng)中為空的文件或者

35、文件夾; (5)寫出在根目錄下查找在系統(tǒng)中屬于 root 組的文件; (6)寫出在根目錄下查找在系統(tǒng)中最后 5 分鐘里修改過的文件; (7)寫出在根目錄下查找在系統(tǒng)中最后 24 小時(shí)里修改過的文件; (8)寫出在根目錄下查找在系統(tǒng)中屬于 root 這個(gè)用戶的文件。 $ $ 27 6.鏈接文件操作 使用 ln 命令完成如下操作: (1)在用戶主目錄下用 cp 命令創(chuàng)建前面實(shí)驗(yàn)中文件 d.txt 的一個(gè)文件副本 link.txt; (2)在用戶主目錄下用 ln 命令創(chuàng)建 link.txt 的符號(hào)鏈接文件 symlink.txt; (3)在用戶主目錄下用 ln 命令創(chuàng)建 link.txt 的硬鏈接文

36、件 hardlink.txt; (4)刪除文件 link.txt,觀察 symlink.txt 和 hardlink.txt 文件變化。 (四)文件系統(tǒng)與磁盤管理 1.磁盤操作 (1)使用 df 命令列出服務(wù)器的磁盤空間使用情況以及節(jié)點(diǎn)使用情況; (2)使用 df 命令列出服務(wù)器中文件系統(tǒng)類型為 ext3 的所有文件系統(tǒng); (3)使用 du 命令查看/home/public 目錄內(nèi)各子目錄及文件的大小和總的使用情 $ $ 28 況。 2.光驅(qū)掛載 使用 mount 和 umount 指令,掛載指定的文件系統(tǒng)。掛載光驅(qū)需在自己機(jī)器上實(shí)驗(yàn), 因此,為選做內(nèi)容。 (1)使用 mount 指令加載光驅(qū)

37、設(shè)備,要求在指令中體現(xiàn)文件系統(tǒng)類型,使用的字 符集是 gb2312; (2)使用 umount 指令將光驅(qū)卸載(可以使用兩種方式) 。 (五)打包與壓縮管理 打包和壓縮命令使用 gzip、gunzip、tar 文件壓縮與解壓縮命令,對(duì)文檔或目錄進(jìn) 行處理。注意:在使用以下命令時(shí),請(qǐng)及時(shí)用 ls 命令觀察當(dāng)前目錄下的文件,并注意 執(zhí)行打包與壓縮的當(dāng)前目錄。 1.tar 命令(存檔和分發(fā)文件) (1)將用戶目錄的文件打包到 mytar.tar; (2)從 mytar.tar 中還原所有文件。 2.gzip/gunzip 命令(文件壓縮和解壓) (1)將剛才的存檔文件 mytar.tar 進(jìn)行壓縮(

38、加-l 參數(shù)顯示壓縮率) ; (2)解壓上步驟生成的壓縮文件。 $ $ $ 29 3.tar 命令再使用 (1)直接使用 tar 命令將用戶目錄的文件打包并壓縮到 mytarzip.tar.zip; (2)直接使用 tar 命令從 mytarzip.tar.zip 中還原所有文件。 (六)ftp 命令 1.使用 ftp 命令登錄到實(shí)驗(yàn)室 ftp 服務(wù)器(服務(wù)器地址和用戶名、密碼均由任課老 師給出) ; 2.使用 cd 命令轉(zhuǎn)換到服務(wù)器的/user/ckj/tmp 目錄; 3.使用 get 命令拷貝該目錄中的 ftpcopy.txt 到你的用戶目錄中(注意你的本地目錄) ; 4.使用 bye 命

39、令退出登錄; 5.退回本地目錄,查看拷貝文件是否在你的用戶目錄中。 (七)進(jìn)程管理 1.使用 ps 命令查看當(dāng)前進(jìn)程狀況, 記錄查看結(jié)果; 2.后臺(tái)運(yùn)行 top 命令; 3.kill 終止進(jìn)程命令,先用 ps 命令查看當(dāng)前進(jìn)程,然后使用 kill 命令殺死 top 進(jìn) 程。 (注意使用 kill -9) 。 $ $ $ 30 (八)用戶和組管理 1.基本命令 who、id、whoami、su 等命令 (1)使用 who 命令查看當(dāng)前登陸系統(tǒng)的用戶; (2)使用 id 命令查看當(dāng)前用戶的 UID 與 GID; (3)使用 whoami 指令查看當(dāng)前使用 shell 的用戶名稱; (4)使用 su

40、 命令從你目前用戶切換至鄰居同學(xué)的用戶,然后切換回自己用戶。 2.用戶和組添加命令 groupadd 和 useradd 等命令(由于服務(wù)器權(quán)限等問題,以下“用戶和組”部分實(shí)驗(yàn) 請(qǐng)?jiān)谧约簷C(jī)器上練習(xí)) (1)使用 groupadd office 命令添加一個(gè)組; (2)使用 tail 命令查看/etc/group 文件,顯示剛才添加的 office 組信息; (3)使用 useradd -g office user1 命令添加一個(gè)用戶,設(shè)定他屬于 office 用戶組; (4)使用 passwd user1 命令為該用戶設(shè)置登錄密碼; (5)使用 tail 命令查看/etc/passwd 文件,

41、檢查用戶的設(shè)置。 $ $ 31 (九)rpm 命令 (由于服務(wù)器權(quán)限等問題,以下“rpm 命令”部分實(shí)驗(yàn)請(qǐng)?jiān)谧约簷C(jī)器上練習(xí)) 1.使用-q 選項(xiàng)查詢系統(tǒng)中是否安裝 ftp 軟件包。 2.分別使用-i、-ivh 選項(xiàng)安裝兩個(gè)軟件包,體會(huì)兩者的不同區(qū)別。 3.使用-e 選項(xiàng),刪除 ftp 軟件 4.使用-U 選項(xiàng),升級(jí) Apache 軟件 5.使用-V 選項(xiàng),校驗(yàn)上一個(gè)步驟中升級(jí)的 Apache 軟件 五、課后思考 1.怎樣使用 Linux 提供的幫助系統(tǒng)來學(xué)習(xí) Linux 的使用? 2.Linux 將命令設(shè)置不同的執(zhí)行權(quán)限有何意義? $ 32 實(shí)驗(yàn)三 Linux 的 vi 編輯器使用( 2 課時(shí)

42、) 一、實(shí)驗(yàn)?zāi)康?1.了解 Linux 操作系統(tǒng)中的常用的文本編輯器。 2.熟練掌握 Linux 下最常用的編輯工具 vi 編輯器的使用。 3.了解 Linux 下使用 gcc 編程過程。 二、實(shí)驗(yàn)要求 1.能使用編輯器 vi 完成一篇英文短文的錄入。 2.練習(xí)多種 vi 命令模式命令和末行模式命令。 3.初步學(xué)會(huì)在 Linux 下使用 gcc 編程。 三、預(yù)備知識(shí) (一)vi 的基本概念 vi 編輯器是 Linux 系統(tǒng)下的標(biāo)準(zhǔn)編輯器,vi 可以分為三種狀態(tài),分別是命令行 模式、插入模式和末行模式,各模式的功能區(qū)分如下: 命令行模式:控制屏幕光標(biāo)的移動(dòng),字符、字或行的刪除,移動(dòng)復(fù)制某區(qū)段及進(jìn)

43、 入插入模式下,或者到末行模式。 插入模式:只有在插入模式下,才可以做文字輸入,按 ESC 鍵可回到命令行模式。 末行模式:將文件保存或退出 vi,也可以設(shè)置編輯環(huán)境,如尋找字符串、列出行 號(hào)等。 在使用時(shí)通常把 vi 簡(jiǎn)化成兩個(gè)模式,將末行模式也算入命令行模式。 (二)vi 的基本操作 1.啟動(dòng)與退出 啟動(dòng) vi :在系統(tǒng)提示符號(hào)輸入 vi 及文件名稱后,就進(jìn)入 vi 全屏幕編輯畫面: $ vi myfile 注意::進(jìn)入 vi 之后,處于命令行模式,要切換到插入模式才能夠輸入文字,在 命令行模式下按下字母 i 進(jìn)入插入模式。 退出 vi 及保存文件:在命令行模式下,按一下冒號(hào):鍵進(jìn)入底行模

44、式,例如: : w filename (輸入 w filename 將文件以指定文件名 filename 保存) : wq (輸入 wq,存盤并退出 vi) : q! (輸入 q!, 不存盤強(qiáng)制退出 vi) 2.命令模式功能鍵 (1)插入模式 按 i 進(jìn)入插入模式后,是從光標(biāo)當(dāng)前位置開始輸入文字; 按 a 進(jìn)入插入模式后,是從目前光標(biāo)所在位置的下一個(gè)位置開始輸入文字; 按 o 進(jìn)入插入模式后,是插入新的一行,從行首開始輸入文字。 從插入模式切換為命令行模式,按 ESC 鍵。 (2)移動(dòng)光標(biāo) vi 可以直接用鍵盤上的光標(biāo)來上下左右移動(dòng),但正規(guī)的 vi 是用小寫英文字母 h、j、k、l,分別控制光

45、標(biāo)左、下、上、右移一格。 按 ctrl+b:屏幕往后移動(dòng)一頁(yè)。 按 ctrl+f:屏幕往前移動(dòng)一頁(yè)。 33 按 ctrl+u:屏幕往后移動(dòng)半頁(yè)。 按 ctrl+d:屏幕往前移動(dòng)半頁(yè)。 按數(shù)字 0:移到文章的開頭。 按 G:移動(dòng)到文章的最后。 按$:移動(dòng)到光標(biāo)所在行的行尾。 按:移動(dòng)到光標(biāo)所在行的行首。 按 w:光標(biāo)跳到下個(gè)字的開頭。 按 e:光標(biāo)跳到下個(gè)字的字尾。 按 b:光標(biāo)回到上個(gè)字的開頭。 按#l:光標(biāo)移到該行的第#個(gè)位置,如:5l,56l。 (3)刪除文字 x:每按一次,刪除光標(biāo)所在位置的后面一個(gè)字符。 #x:例如,6x 表示刪除光標(biāo)所在位置的后面6 個(gè)字符。 X:大寫的 X,每按一次

46、,刪除光標(biāo)所在位置的前面一個(gè)字符。 #X:例如,20X 表示刪除光標(biāo)所在位置的前面20 個(gè)字符。 dd:刪除光標(biāo)所在行。 #dd:從光標(biāo)所在行開始刪除#行。 (4)復(fù)制 yw:將光標(biāo)所在之處到字尾的字符復(fù)制到緩沖區(qū)中。 #yw:復(fù)制#個(gè)字到緩沖區(qū) yy:復(fù)制光標(biāo)所在行到緩沖區(qū)。 #yy:例如,6yy 表示拷貝從光標(biāo)所在的該行往下數(shù)6 行文字。 p:將緩沖區(qū)內(nèi)的字符貼到光標(biāo)所在位置。注意:所有與y有關(guān)的復(fù)制命令都必 須與p配合才能完成復(fù)制與粘貼功能。 e替換 r:替換光標(biāo)所在處的字符。 R:替換光標(biāo)所到之處的字符,直到按下 ESC 鍵為止。 u:回復(fù)上一次操作如果誤執(zhí)行一個(gè)命令,可以馬上按下 u

47、,回到上一個(gè)操作。按 多次u可以執(zhí)行多次回復(fù)。 cw:更改光標(biāo)所在處的字到字尾處 c#w:例如,c3w 表示更改 3 個(gè)字 3.末行模式下命令 在使用末行模式之前,先按 ESC 鍵確定已經(jīng)處于命令行模式下后,再按:冒號(hào)即 可進(jìn)入末行模式。 列出行號(hào) set nu:輸入 set nu 后,會(huì)在文件中的每一行前面列出行號(hào)。 跳到文件中的某一行#:#號(hào)表示一個(gè)數(shù)字,在冒號(hào)后輸入一個(gè)數(shù)字,再按回車鍵 跳到該行,如輸入數(shù)字 15,再回車,就會(huì)跳到文章的第 15 行。 查找字符 /關(guān)鍵字:先按/鍵,再輸入您想尋找的字符,如果第一次找的關(guān)鍵字不是想要的, 可以一直按 n 會(huì)往后尋找到要的關(guān)鍵字為止。 ?關(guān)鍵

48、字:先按?鍵,再輸入想尋找的字符,如果第一次找的關(guān)鍵字不是想要的, 可以一直按 n 會(huì)往前尋找到您要的關(guān)鍵字為止。 (三)Linux 下 GCC 簡(jiǎn)介 Linux 系統(tǒng)下的 gcc(GNU C Compiler)是 GNU 推出的功能強(qiáng)大、性能優(yōu)越的多平 34 臺(tái)編譯器,是 GNU 的代表作品之一。gcc 是可以在多種硬體平臺(tái)上編譯出可執(zhí)行程序的 超級(jí)編譯器,其執(zhí)行效率與一般的編譯器相比平均效率要高 20%30%。 gcc 編譯器能將 C、C+語(yǔ)言源程序、匯程式化序和目標(biāo)程序編譯、連接成可執(zhí)行 文件,如果沒有給出可執(zhí)行文件的名字,gcc 將生成一個(gè)名為 a.out 的文件。在 Linux 系統(tǒng)

49、中,可執(zhí)行文件沒有統(tǒng)一的后綴,系統(tǒng)從文件的屬性來區(qū)分可執(zhí)行文件和不可執(zhí) 行文件。 雖然我們稱 gcc 是 C 語(yǔ)言的編譯器,但使用 gcc 由 C 語(yǔ)言源代碼文件生成可執(zhí)行 文件的過程不僅僅是編譯的過程,而是要經(jīng)歷四個(gè)相互關(guān)聯(lián)的步驟預(yù)處理(也稱預(yù)編 譯,Preprocessing)、編譯(Compilation)、匯編(Assembly)和連接(Linking)。 gcc 的基本用法和選項(xiàng) 在使用 gcc 編譯器的時(shí)候,我們必須給出一系列必要的調(diào)用參數(shù)和文件名稱。gcc 編譯器的調(diào)用參數(shù)大約有 100 多個(gè),其中多數(shù)參數(shù)我們可能根本就用不到,這里只介 紹其中最基本、最常用的參數(shù)。 gcc 最基

50、本的用法是gcc options filenames 其中 options 就是編譯器所需要的參數(shù),filenames 給出相關(guān)的文件名稱。 -c,只編譯,不連接成為可執(zhí)行文件,編譯器只是由輸入的.c 等源代碼文件生成. o 為后綴的目標(biāo)文件,通常用于編譯不包含主程序的子程序文件。 -o output_filename,確定輸出文件的名稱為 output_filename,同時(shí)這個(gè)名稱不 能和源文件同名。如果不給出這個(gè)選項(xiàng),gcc 就給出預(yù)設(shè)的可執(zhí)行文件 a.out。 -g,產(chǎn)生符號(hào)調(diào)試工具(GNU 的 gdb)所必要的符號(hào)資訊,要想對(duì)源代碼進(jìn)行調(diào)試, 我們就必須加入這個(gè)選項(xiàng)。 -O,對(duì)程序進(jìn)

51、行優(yōu)化編譯、連接,采用這個(gè)選項(xiàng),整個(gè)源代碼會(huì)在編譯、連接過 程中進(jìn)行優(yōu)化處理,這樣產(chǎn)生的可執(zhí)行文件的執(zhí)行效率可以提高,但是,編譯、連接 的速度就相應(yīng)地要慢一些。 -O2,比-O 更好的優(yōu)化編譯、連接,當(dāng)然整個(gè)編譯、連接過程會(huì)更慢。 -Idirname,將 dirname 所指出的目錄加入到程序頭文件目錄列表中,是在預(yù)編譯 過程中使用的參數(shù)。C 程序中的頭文件包含兩種情況 A)#include B)#include “myinc.h” 其中,A 類使用尖括號(hào)(),B 類使用雙引號(hào)(“ ”)。對(duì)于 A 類,預(yù)處理程序 cpp 在系統(tǒng)預(yù)設(shè)包含文件目錄(如/usr/include)中搜尋相應(yīng)的文件,而

52、對(duì)于 B 類,cpp 在當(dāng)前目錄中搜尋頭文件,這個(gè)選項(xiàng)的作用是告訴 cpp,如果在當(dāng)前目錄中沒有找到需 要的文件,就到指定的 dirname 目錄中去尋找。在程序設(shè)計(jì)中,如果我們需要的這種 包含文件分別分布在不同的目錄中,就需要逐個(gè)使用-I 選項(xiàng)給出搜索路徑。 四、實(shí)驗(yàn)內(nèi)容 (一)vi 的基本使用 在用戶目錄中 vi 和想要編輯(或建立)的文件名,便可進(jìn)入 vi。 例: 1.鍵入命令: $ vi file.c 2.進(jìn)入 vi 后,按下 i 進(jìn)入插入模式。 3.編輯內(nèi)容如圖 3-1。 35 4.按下 esc 進(jìn)入命令模式,輸入“:wq”就可以保存文件并退出。 ( write and quit )

53、 (二)vi 的命令模式練習(xí) 使用 vi 打開步驟 1 的編輯文件,在命令模式下練習(xí)如下操作: 1.練習(xí)基本的移動(dòng)命令 2.復(fù)制最后一行,將其拷貝為文章新的最后一行 3.更改新的最后一行中“ID”為“name” ,將學(xué)號(hào)改為姓名(漢語(yǔ)拼音字符串) 4.刪除倒數(shù)第二行 5.保存編輯后的文件,并退出 圖 3-1 vi 編輯內(nèi)容 (三)vi 的末行命令練習(xí) 再次使用 vi 打開步驟 2 的編輯文件,在末行模式下練習(xí)如下操作: 1.設(shè)置行號(hào)、取消行號(hào),并觀察文本變化 2.跳轉(zhuǎn)到第 4 行,將第 4 至 9 行寫到外部文件 “file1.txt” 中 3.將外部文件 “file1.txt” 再寫到當(dāng)前文

54、件的末尾 4.將文件“file.c”中所有的“This”替換成“It” 5.將文件的最后兩行刪除 6.保存修改過的文件,退出 (四)Linux 編程實(shí)現(xiàn)步驟 1.$ vi hello.c This is line1 This is line2 (空一行) This is line4 (空一行) (空一行) This is line7 This is line8 My ID is * 36 2.按下 i 進(jìn)入編輯狀態(tài) 3.輸入內(nèi)容如圖 3-2 圖 3-2 hello.c 內(nèi)容 4.按 ESC 進(jìn)入命令狀態(tài),輸入:“:wq” 保存文件并退出 5.編譯 hello.c ,將并將文件輸出到 hello

55、.out $ gcc -o hello.out hello.c 6.執(zhí)行編譯文件 $ ./hello.out 7.你將會(huì)看到輸出結(jié)果 I try to use linux! 五、課后思考 1.Linux 系統(tǒng)中,除 vi 編輯器外,還有哪些文本編輯器? 2.如果退出 vi 編輯器時(shí)需要覆蓋原有文件,該如何操作(提示:與強(qiáng)制退出類似) ? #include main() printf(“I try to use linux! n”); 37 實(shí)驗(yàn)四 Linux 的 shell 編程(6 課時(shí)) 一、實(shí)驗(yàn)?zāi)康?1.熟悉 shell 程序的編程過程。 2.掌握 shell 基本語(yǔ)法。 二、實(shí)驗(yàn)要求

56、1.掌握創(chuàng)建和執(zhí)行 shell 程序的過程; 2.熟悉編寫命令集的 shell 程序; 3.熟悉 shell 編程中變量的使用; 4.掌握 shell 的輸入和輸出重定向; 5.熟練應(yīng)用 shell 程序的控制語(yǔ)句; 6.掌握 shell 的菜單編寫方法; 7.掌握 shell 程序的函數(shù)編寫和使用; 8.能夠簡(jiǎn)單調(diào)試 shell 腳本。 三、預(yù)備知識(shí) (一)shell 概述 盡管在 Linux 中有各種各樣的圖形化工具,但是 shell 仍然是 Linux 中一個(gè)非常 靈活實(shí)用的工具,shell 比較擅長(zhǎng)完成系統(tǒng)管理任務(wù),尤其適合完成那些易用性,可維 護(hù)性和便攜性比執(zhí)行效率要求更重要的任務(wù)。

57、 BASH 是 Linux 默認(rèn)的 Shell,程序?yàn)?bash,其他的 Shell 如表 4-1。本指導(dǎo)書中 只介紹 BASH,后文中若沒有加上下文,則簡(jiǎn)稱 BASH 環(huán)境中的 Shell 程序?yàn)?Shell 程序 或者 Shell 腳本(Shell Script) 。 在 Linux 中,sh 程序是 bash 的別名,后文中不加說明的話,sh 也就是 bash。 表 4-1 Linux 中的各種 shell shell 名稱描述 位置 ash 一個(gè)小 shell(和 sh 類似) /bin/ash ash.static 一個(gè)不依靠軟件庫(kù)的 ash 版本 /bin/ash.static b

58、ash BourneAgainShell /bin/bash bash2 BourneAgainShell 的新版本 /bin/bash2 bsh ash 的一個(gè)符號(hào)鏈接 /bin/bsh csh Cshell,tcsh 的一個(gè)符號(hào)鏈接 /bin/csh ksh 公共域受限制的 shell(針對(duì)網(wǎng)絡(luò)操 作) /usr/bin/ksh sh bash 的一個(gè)符號(hào)鏈接 /bin/sh tcsh 和 csh 兼容的 shell /bin/tcsh zsh 一個(gè)和 csh,ksh 和 sh 兼容的 shell /bin/zsh (二)shell 執(zhí)行和調(diào)試 執(zhí)行 Shell 程序的方法有兩種:一是將

59、Shell 程序文件設(shè)置為可執(zhí)行,然后直接執(zhí) 行該文件;二是指明使用 bash 解釋、執(zhí)行該 Shell 程序文件。實(shí)際上,第一種方式中, 待運(yùn)行的 Shell 程序文件的第一行必須指明解釋、執(zhí)行該命令文件的程序。該行通常寫 成: !/bin/bash 38 #!用來指示哪個(gè)程序要解釋命令文件。它必須是文件的第一行。 例如 example.sh 為 Shell 程序文件,設(shè)置該文件為可執(zhí)行后,在 Shell 下鍵入: ./example.sh 就可以執(zhí)行該 Shell 程序文件。 最簡(jiǎn)單的調(diào)試命令當(dāng)然是使用 echo 命令??梢允褂?echo 在任何懷疑出錯(cuò)的地方打 印任何變量值。這也是絕大多

60、數(shù)的 shell 程序員要花費(fèi) 80%的時(shí)間來調(diào)試程序的原因。 Shell 程序的好處在于不需要重新編譯,插入一個(gè) echo 命令也不需要多少時(shí)間。 查錯(cuò) Shell 程序文件的方法是使用第二種執(zhí)行方式,比如執(zhí)行 example.sh 文件, 在 Shell 下鍵入: bash example.sh 就可以執(zhí)行該 Shell 程序文件。不過,排錯(cuò)需要使用 bash 的選項(xiàng): -x 在變量替換之后但執(zhí)行之前,顯示命令文件的每一行。 -v 在執(zhí)行之前顯示命令文件的每一行,就像你輸入一樣。 -n 解譯但不執(zhí)行命令。 +x 關(guān)閉追蹤。 因此,查錯(cuò) example.sh 的方法為使用如下命令: bash

61、 -x example.sh (三)編寫 shell 程序的注意事項(xiàng) 因?yàn)?Linux 中命令使用小寫字母,所以 shell 編程中一般使用大寫字母表示變量以 示區(qū)別; Shell 語(yǔ)句中必須加入必要的注釋,注釋以#開頭; 在 shell 語(yǔ)句中當(dāng)有特殊字符時(shí),要用轉(zhuǎn)義字符 進(jìn)行轉(zhuǎn)義。 四、實(shí)驗(yàn)內(nèi)容 首先在你的用戶目錄下建立一個(gè)名為“shell”的目錄,本次實(shí)驗(yàn)的所有 shell 腳本 必須存放在此目錄下。 (一)編寫一個(gè)命令集的 shell 程序 1.例子 編寫一個(gè) shell 程序,文件名為 exp4-1.sh。腳本主要功能為:顯示當(dāng)前的日期時(shí)間、 執(zhí)行路徑、用戶賬號(hào)及所在的目錄位置。 編

62、程過程: 在用戶主目錄的 shell 目錄下,通過 vi exp4-1.sh,進(jìn)入編輯腳本模式。如圖 4-1。 圖 4-1 編輯例子腳本 exp4-1.sh 39 在編輯模式下,輸入腳本內(nèi)容,如圖 4-2: 圖 4-2 腳本 exp4-1.sh 內(nèi)容 編輯完腳本,返回到命令提示符下,用三種方法執(zhí)行 shell 腳本,結(jié)果如圖 4-3: 圖 4-3 腳本 exp4-1.sh 三種執(zhí)行方法下的結(jié)果 2.作業(yè) 要求:寫一個(gè)備份用戶目錄的 shell,腳本名為 lab4_1.sh。shell 腳本中主要功能有: a在/tmp 目錄中建立用戶的備份文件存放目錄,目錄名為用戶登錄名;(使用 LOGNAME

63、 環(huán)境變量) b將用戶目錄打包并壓縮,壓縮包名為“用戶名.tar.gz”格式;(使用 HOME 環(huán) 境變量) c將用戶目錄打包并壓縮的文件移動(dòng)至在第 a 步建立的存放目錄中。 40 運(yùn)行你寫的 shell 程序,并觀察結(jié)果。 (二)編寫一個(gè)使用變量的 shell 程序 1.例子 編寫一個(gè) shell 程序,文件名為 exp4-2.sh。內(nèi)容如圖 4-4: 圖 4-4 腳本 exp4-2.sh 內(nèi)容 !/bin/bash $ 41 執(zhí)行腳本結(jié)果如圖 4-5: 圖 4-5 腳本 exp4-2.sh 執(zhí)行結(jié)果 2.作業(yè) 要求:編寫一個(gè) shell 程序,腳本名為 lab4_2.sh。使它具有如下功能

64、: 輸入兩個(gè)數(shù),比較其大小,按照先大后小的次序輸出兩個(gè)數(shù)。 注:數(shù)字比較符及其含義如表 4-2. 表 4-2 數(shù)字比較符及其含義 -eq 等于 -ne 不等于 -gt 大于 -ge 大于等于 -lt 小于 -le 小于等于 42 (三)編寫一個(gè)使用控制語(yǔ)句的 shell 程序 1.例子 編寫一個(gè) shell 程序,文件名為 exp4-3.sh。內(nèi)容如圖 4-6: 圖 4-6 腳本 exp4-3.sh 內(nèi)容 執(zhí)行腳本結(jié)果如圖 4-7: !/bin/bash 43 圖 4-7 腳本 exp4-3.sh 執(zhí)行結(jié)果 2.作業(yè) 1 要求: 編寫三個(gè) shell 腳本,分別用 for、while 、unt

65、il 三種循環(huán)實(shí)現(xiàn)求 100(含)以內(nèi)的 偶數(shù)的和。 注: afor 循環(huán)腳本文件名為 lab4_3.sh。 !/bin/bash 45 bwhile 循環(huán)腳本文件名為 lab4_4.sh。 !/bin/bash 46 cuntil 循環(huán)腳本文件名為 lab4_5.sh。 2.作業(yè) 2 要求: 編寫一個(gè) shell 程序,腳本文件名為 lab4_6.sh,使它具有以下功能: a輸入小寫字母時(shí)顯示 “l(fā)ower case letter”; b輸入大寫字母時(shí)顯示 “upper case letter”; c輸入數(shù)字顯示 “digit”; d輸入其它字符顯示 “error”。 提示:表示區(qū)間常量時(shí)用

66、a-b,如3-5。 !/bin/bash !/bin/bash 47 (四)編寫一個(gè)含有菜單的 shell 程序 要求: 編寫一個(gè)簡(jiǎn)單的目錄菜單,并實(shí)現(xiàn)菜單對(duì)應(yīng)功能,文件名為 lab4_6.sh,使它具有 以下功能: 1.顯示目錄下的文件; 2.改變目錄; 3.編輯文件(vi) ; 4.刪除文件; 5.退出菜單。 !/bin/bash 48 (五)編寫一個(gè)應(yīng)用函數(shù)的 shell 程序 1.例子 編寫一個(gè) shell 程序,文件名為 exp4-4.sh。內(nèi)容如圖 4-8: 圖 4-8 腳本 exp4-4.sh 內(nèi)容 執(zhí)行腳本結(jié)果如圖 4-9: 圖 4-9 腳本 exp4-4.sh 執(zhí)行結(jié)果 2.作業(yè) 要求: 編寫一個(gè) shell 腳本,文件名為 lab4_7.sh,通過函數(shù)調(diào)用的形式顯示如下內(nèi)容: (1)I Like Linux (2)I Like ShellScript 注:即函數(shù)參數(shù)為用戶輸入的喜歡內(nèi)容,如 Linux、ShellScript 等。 !/bin/bash 49 (六)shell 腳本調(diào)試 要求: 使用 set 命令輔助調(diào)試上面 lab4_6.sh 和 lab4_7.s

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

相關(guān)資源

更多
正為您匹配相似的精品文檔
關(guān)于我們 - 網(wǎng)站聲明 - 網(wǎng)站地圖 - 資源地圖 - 友情鏈接 - 網(wǎng)站客服 - 聯(lián)系我們

copyright@ 2023-2025  zhuangpeitu.com 裝配圖網(wǎng)版權(quán)所有   聯(lián)系電話:18123376007

備案號(hào):ICP2024067431號(hào)-1 川公網(wǎng)安備51140202000466號(hào)


本站為文檔C2C交易模式,即用戶上傳的文檔直接被用戶下載,本站只是中間服務(wù)平臺(tái),本站所有文檔下載所得的收益歸上傳人(含作者)所有。裝配圖網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)上載內(nèi)容本身不做任何修改或編輯。若文檔所含內(nèi)容侵犯了您的版權(quán)或隱私,請(qǐng)立即通知裝配圖網(wǎng),我們立即給予刪除!