第三章 shell基本命令_第1頁
第三章 shell基本命令_第2頁
第三章 shell基本命令_第3頁
第三章 shell基本命令_第4頁
第三章 shell基本命令_第5頁
已閱讀5頁,還剩47頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、第三章第三章shell基本命令基本命令學習目標學習目標 學會使用常用的命令學會使用常用的命令 學會學會shell的功能和簡單腳本的功能和簡單腳本Linux用戶環(huán)境用戶環(huán)境 內(nèi)核內(nèi)核(Kernel) Shell 終端模擬器終端模擬器(Terminal Emulator) X Window系統(tǒng)系統(tǒng) 窗口管理器窗口管理器(Window Manager) 桌面環(huán)境桌面環(huán)境(Desktop Environment) 本地登錄本地登錄Red Hat Linux release 9.0 (Shrike)Kernel 2.4.21-8 on an i686login:root(用戶名)(用戶名)passwor

2、d:_(密碼)(密碼)提示符與提示符與home目錄目錄rootlocalhost root# 當前用戶名當前用戶名主機名當前目錄主機名當前目錄 提示符因用戶而異提示符因用戶而異 home目錄是用戶登入系統(tǒng)后即所在的默目錄是用戶登入系統(tǒng)后即所在的默認目錄。認目錄。創(chuàng)建用戶創(chuàng)建用戶useradd 用戶名用戶名passwd 用戶名用戶名example: rootlocalhost root# useradd student rootlocalhost root# passwd student Changing password for user student New password: (無回顯)

3、(無回顯) Retype new password: (無回顯)(無回顯) passwd: all authentication tokens updated successfully rootlocalhost root#運行指令運行指令 指令名指令名 選項選項 參數(shù)參數(shù) 例子:例子: ls -l /etc/X11 幫助和在線幫助幫助和在線幫助 指令指令 -help 例:例:mknod -help man 指令指令 例:例:man mknod info 指令指令 例例:info mknod基礎(chǔ)指令(一)基礎(chǔ)指令(一) man 的使用技巧的使用技巧 man -k keyword man -f

4、keyword man -a keyword man n keyword基礎(chǔ)指令(二基礎(chǔ)指令(二) ls 查看文件查看文件 cp 拷貝文件拷貝文件 mv移動或重命名文件移動或重命名文件 rm刪除文件刪除文件 touch 創(chuàng)建空文件或更新文件時間創(chuàng)建空文件或更新文件時間基礎(chǔ)指令(三基礎(chǔ)指令(三) cd 改變當前路徑改變當前路徑 pwd察看當前完整路徑察看當前完整路徑 mkdir創(chuàng)立新目錄創(chuàng)立新目錄 rmdir刪除空目錄刪除空目錄基礎(chǔ)指令(四基礎(chǔ)指令(四) cat察看文件內(nèi)容察看文件內(nèi)容 more 逐屏察看文件內(nèi)容逐屏察看文件內(nèi)容 less逐行察看文件內(nèi)容逐行察看文件內(nèi)容 date顯示當前時間顯示

5、當前時間 cal顯示月歷顯示月歷基礎(chǔ)指令(基礎(chǔ)指令(五)五) df 顯示磁盤用量顯示磁盤用量 du 計算目錄下文件占用磁盤的大小計算目錄下文件占用磁盤的大小基礎(chǔ)指令(六基礎(chǔ)指令(六) head 顯示文件開頭部分內(nèi)容顯示文件開頭部分內(nèi)容 tail 顯示文件結(jié)尾部分內(nèi)容顯示文件結(jié)尾部分內(nèi)容設(shè)設(shè) 備備 文文 件件 設(shè)備在設(shè)備在Linux中以特殊文件的形式存在中以特殊文件的形式存在 塊(塊(block)設(shè)備文件)設(shè)備文件 字符(字符(character)設(shè)備文件)設(shè)備文件 設(shè)備文件所在位置設(shè)備文件所在位置 查看設(shè)備類型查看設(shè)備類型虛擬控制臺及用戶身份切換虛擬控制臺及用戶身份切換 在系統(tǒng)中有在系統(tǒng)中有1

6、2個虛擬控制臺,前個虛擬控制臺,前6個可供個可供用作本地登錄用作本地登錄 用戶可以用用戶可以用Alt+Fn(n=112)來切換。來切換。 用用su可以用來切換用戶身份可以用來切換用戶身份 su - username離開系統(tǒng)離開系統(tǒng) 重啟重啟 reboot shutdown -r now init 6 關(guān)機關(guān)機 halt shutdown -h now poweroff init 0Shell簡介簡介 Shell:命令行解釋器,是用戶與系統(tǒng)溝:命令行解釋器,是用戶與系統(tǒng)溝通時的媒介。通時的媒介。 在在Unix系統(tǒng)中有各種系統(tǒng)中有各種Shell,Linux采用采用bash為其默認為其默認shell

7、 系統(tǒng)可以使用的系統(tǒng)可以使用的shell記錄在記錄在/etc/shells中中輸入、輸出、重定向輸入、輸出、重定向 輸入:過濾器的數(shù)據(jù)來源輸入:過濾器的數(shù)據(jù)來源 標準輸入標準輸入stdin(0):默認是鍵盤):默認是鍵盤 輸出:過濾器的數(shù)據(jù)去向輸出:過濾器的數(shù)據(jù)去向 標準輸出標準輸出stdout (1):默認是終端屏幕:默認是終端屏幕 錯誤輸出錯誤輸出 :報錯訊息與標準輸出走不同的:報錯訊息與標準輸出走不同的I/O通道通道 標準錯誤輸出標準錯誤輸出stderr(2):默認是終端屏幕:默認是終端屏幕 重定向:標準輸入、輸出與錯誤輸出,都可以用特定重定向:標準輸入、輸出與錯誤輸出,都可以用特定符號

8、改變數(shù)據(jù)來源或去向符號改變數(shù)據(jù)來源或去向輸入重定向輸入重定向 使用使用“”來重定向輸入源來重定向輸入源 大多數(shù)工具都會以其后的文件名為輸入大多數(shù)工具都會以其后的文件名為輸入源源 有一些過濾器一定需要添加有一些過濾器一定需要添加 以明確輸以明確輸入源入源從當前文檔輸入從當前文檔輸入 使用使用 改變數(shù)據(jù)輸出目標改變數(shù)據(jù)輸出目標 范例:范例:ls l listfile 將當前目錄下的文件以長模式顯示,將當前目錄下的文件以長模式顯示,然后寫入然后寫入listfile文件文件 文件已有內(nèi)容會被消除文件已有內(nèi)容會被消除覆蓋與追加覆蓋與追加 使用使用進行輸出重定向,文件的原內(nèi)容會進行輸出重定向,文件的原內(nèi)容

9、會被覆蓋被覆蓋ls l listfile 使用使用,可以將輸出追加入文件,可以將輸出追加入文件ls l listfile錯誤輸出重定向錯誤輸出重定向 系統(tǒng)錯誤與標準輸出使用的系統(tǒng)錯誤與標準輸出使用的I/O管道不同管道不同 默認情況下,系統(tǒng)報錯會顯示到終端屏默認情況下,系統(tǒng)報錯會顯示到終端屏幕上幕上 使用使用2將報錯訊息重定向入一個文件將報錯訊息重定向入一個文件find / -type s 2 /dev/null 使用使用2將報錯訊息追加入一個文件將報錯訊息追加入一個文件find / -name passwd 2 results雙重輸出重定向雙重輸出重定向 使用使用和和2可以將一次操作的正確、錯

10、誤可以將一次操作的正確、錯誤輸入,被單獨地送到不同的地方:輸入,被單獨地送到不同的地方:find / -perm -2 2 error results 使用使用&將所有輸入都送向同一個地方:將所有輸入都送向同一個地方:find / -perm +6000 file管道管道 使用使用 | 將前一個過濾器的輸出直接送入后將前一個過濾器的輸出直接送入后一個過濾器的輸入一個過濾器的輸入ls l | grep pass 允許多重管道允許多重管道 注意管道前過濾器的輸出與管道后過濾注意管道前過濾器的輸出與管道后過濾器的輸入數(shù)據(jù)類型匹配器的輸入數(shù)據(jù)類型匹配重定向、管道的常用范例重定向、管道的常用范例 ls

11、l | more 分屏顯示當前目錄下的文件分屏顯示當前目錄下的文件 cat fileb 拷貝拷貝filea到到fileb cat file.* file 將數(shù)個小文件合并成一個文件將數(shù)個小文件合并成一個文件alias 在在shell下鍵入下鍵入alias可以查詢當前可以查詢當前alias列列表。表。 用戶可以用戶可以alias來為一條命令取一個簡單來為一條命令取一個簡單的別名的別名 用戶也可以用戶也可以用用unalias來取消一條別名記來取消一條別名記錄。錄。 alias記錄在記錄在shell中總是先行。中總是先行。bash bash:Bourne Again Shell的縮寫。的縮寫。 GN

12、U計劃的一個組件。計劃的一個組件。 與與Unix上的上的Bourne Shell完全兼容。完全兼容。 支持命令行輸入、操作歷史查詢、快捷支持命令行輸入、操作歷史查詢、快捷鍵、使用變量等功能。鍵、使用變量等功能。預(yù)定義環(huán)境變量預(yù)定義環(huán)境變量 在在bash中有很多預(yù)定義環(huán)境變量中有很多預(yù)定義環(huán)境變量 系統(tǒng)通過預(yù)定義環(huán)境變量來定義系統(tǒng)通過預(yù)定義環(huán)境變量來定義shell的環(huán)境的環(huán)境 用戶可以用戶可以用用set或或env查詢當前的環(huán)境變量查詢當前的環(huán)境變量 常用的預(yù)定義變量:常用的預(yù)定義變量: HOME:當前用戶的主目錄:當前用戶的主目錄 PATH:當前用戶的可執(zhí)行文件搜索路徑:當前用戶的可執(zhí)行文件搜索

13、路徑 LANG:程序應(yīng)該使用的默認語言:程序應(yīng)該使用的默認語言 PS1:行提示符:行提示符history 在在bash中輸入中輸入history指令可以查詢用戶指令可以查詢用戶的過往操作。的過往操作。 內(nèi)存中記錄的過往指令數(shù)根據(jù)環(huán)境變量內(nèi)存中記錄的過往指令數(shù)根據(jù)環(huán)境變量中中HISTSIZE而定。而定。 history表存儲在內(nèi)存中,在用戶表存儲在內(nèi)存中,在用戶logout時時會記錄入用戶主目錄下的會記錄入用戶主目錄下的.bash_history文文件中。在下次件中。在下次login時載入。時載入。 .bash_history中的指令數(shù)根據(jù)環(huán)境變量中中的指令數(shù)根據(jù)環(huán)境變量中的的HISTFILES

14、IZE而定。而定。調(diào)用過往指令調(diào)用過往指令 使用使用 ! 來調(diào)用過往指令:來調(diào)用過往指令: !:重復(fù)執(zhí)行上一條指令:重復(fù)執(zhí)行上一條指令 !a:重復(fù)執(zhí)行上一條以:重復(fù)執(zhí)行上一條以a為首的指令為首的指令 !number:重復(fù)執(zhí)行上一條在:重復(fù)執(zhí)行上一條在history表表中記錄號碼為中記錄號碼為number的指令的指令 !-number:重復(fù)執(zhí)行前第:重復(fù)執(zhí)行前第number條指條指令令 可以用可以用來在來在history表中查詢某條表中查詢某條過往指令過往指令命令行表達式命令行表達式 命令行輸出命令行輸出“ ” 將一串字符當成一個字符串來對待,如果字將一串字符當成一個字符串來對待,如果字符串中包

15、含特殊含義的字符,則轉(zhuǎn)義。符串中包含特殊含義的字符,則轉(zhuǎn)義。 命令行輸出命令行輸出 將一串字符當成一個字符串來對待,如果字將一串字符當成一個字符串來對待,如果字符串中包含特殊含義的字符,不轉(zhuǎn)義。符串中包含特殊含義的字符,不轉(zhuǎn)義。 執(zhí)行引用執(zhí)行引用符符 引用命令的執(zhí)行結(jié)果引用命令的執(zhí)行結(jié)果命令行表達式(二)命令行表達式(二) 數(shù)學運算數(shù)學運算$ 在中括號內(nèi)的表達式會被數(shù)學計算在中括號內(nèi)的表達式會被數(shù)學計算 逸脫符逸脫符 用于取消命令行中字符的特殊含義用于取消命令行中字符的特殊含義 用于表示一行未結(jié)束用于表示一行未結(jié)束命令行表達式(三)命令行表達式(三) 命令行結(jié)束符命令行結(jié)束符; 用于在一行內(nèi)分

16、隔兩個獨立命令,表用于在一行內(nèi)分隔兩個獨立命令,表示一行已結(jié)束,作用相當于回車鍵示一行已結(jié)束,作用相當于回車鍵pwd ; ls l 子子shell激活激活() 在小括號內(nèi)的命令行表示激活一個子在小括號內(nèi)的命令行表示激活一個子shell后在子后在子shell中運行中運行邏輯運算符邏輯運算符 shell命令行支持在同一行的兩條命令中命令行支持在同一行的兩條命令中插入插入&(邏輯與)與(邏輯與)與 |(邏輯或)(邏輯或) &:當前一條指令執(zhí)行成功時再執(zhí)行:當前一條指令執(zhí)行成功時再執(zhí)行后一條指令后一條指令 |:當前一條指令執(zhí)行失敗時再執(zhí)行:當前一條指令執(zhí)行失敗時再執(zhí)行后一條指令后一條指令登錄登錄she

17、ll 默認情況下,在默認情況下,在shell下改變變量下改變變量、umask、alias,只在此次登錄中有效。,只在此次登錄中有效。一旦一旦logout后再后再login,則設(shè)定恢復(fù)初始,則設(shè)定恢復(fù)初始值。值。 一個通過登錄而得到的一個通過登錄而得到的shell,一般是用,一般是用戶的初始戶的初始shell。 在登錄在登錄shell下激活的下激活的shell采用登錄采用登錄shell的環(huán)境設(shè)定的環(huán)境設(shè)定 登錄登錄shell從配置文件中讀取其環(huán)境設(shè)定從配置文件中讀取其環(huán)境設(shè)定定制登錄定制登錄shell bash 在用戶登錄時從四個文件中讀取環(huán)在用戶登錄時從四個文件中讀取環(huán)境設(shè)定:境設(shè)定: 全局設(shè)

18、置文件:全局設(shè)置文件: /etc/profile /etc/bashrc 用戶設(shè)置文件:用戶設(shè)置文件: /.bashrc /.bash_profile其他其他shell設(shè)定文件設(shè)定文件 /.bash_logout:在用戶:在用戶logout的時候自的時候自動執(zhí)行。動執(zhí)行。 /.bash_history:用戶:用戶login時自動讀取其時自動讀取其內(nèi)容并加載到內(nèi)存內(nèi)容并加載到內(nèi)存history記錄中,記錄中,logout時將內(nèi)存時將內(nèi)存history記錄寫入。記錄寫入。 /etc/profile.d/*.sh:在:在/etc/profile中被執(zhí)中被執(zhí)行,其中的環(huán)境設(shè)定,也會被全局引用行,其中的

19、環(huán)境設(shè)定,也會被全局引用常用快捷鍵常用快捷鍵 Ctrl + d:輸入已結(jié)束。在:輸入已結(jié)束。在shell下相當于下相當于一個一個exit Ctrl + c:鍵盤中斷請求。:鍵盤中斷請求。 Ctrl +s & Ctrl + q:暫停:暫停/恢復(fù)屏幕輸出恢復(fù)屏幕輸出 Ctrl + l:清屏,相當于:清屏,相當于clear。 Tab:自動補完命令行與文件名:自動補完命令行與文件名 Tab鍵雙擊可以列出所有可能匹配的選鍵雙擊可以列出所有可能匹配的選擇擇Shell 腳本腳本 Shell Scripts是一個包含是一個包含shell指令的文本指令的文本文件。文件。 Shell腳本支持變量與簡單的語法來完成

20、腳本支持變量與簡單的語法來完成批量工作。批量工作。 Shell腳本支持交互的方式,在執(zhí)行時從腳本支持交互的方式,在執(zhí)行時從標準輸入讀取數(shù)據(jù)。標準輸入讀取數(shù)據(jù)。 有大量的系統(tǒng)工作都是通過有大量的系統(tǒng)工作都是通過Shell腳本的腳本的方式來完成,例如系統(tǒng)開機,服務(wù)控制。方式來完成,例如系統(tǒng)開機,服務(wù)控制。編輯編輯shell腳本腳本 我們可以使用各種編輯工具來編輯我們可以使用各種編輯工具來編輯shell script。 在腳本中,在腳本中,#開頭表示該行被注釋。開頭表示該行被注釋。 腳本中可以采用腳本中可以采用shell下能使用的所用命下能使用的所用命令、變量、正則表達式令、變量、正則表達式變量賦值

21、與繼承變量賦值與繼承 在在shell與與shell腳本中,我們允許自己定腳本中,我們允許自己定義變量并為他們賦值。義變量并為他們賦值。 語法:變量名語法:變量名=值值 默認情況下,變量值不會被繼承默認情況下,變量值不會被繼承入子入子shell 用用export將變量變成環(huán)境變量將變量變成環(huán)境變量 export 變量名變量名 用用unset取消變量定義。取消變量定義。腳本的數(shù)據(jù)讀取與寫出腳本的數(shù)據(jù)讀取與寫出 使用使用read將數(shù)據(jù)讀入將數(shù)據(jù)讀入read username 從標準輸入讀取數(shù)據(jù)來為從標準輸入讀取數(shù)據(jù)來為username這這個變量賦值個變量賦值 使用使用echo完成簡單地輸出完成簡單地輸出echo “h

溫馨提示

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

評論

0/150

提交評論