华南俳烁实业有限公司

考試首頁 | 考試用書 | 培訓課程 | 模擬考場 | 考試論壇  
  當前位置:操作系統(tǒng) > Linux > 文章內容
  

Linux操作系統(tǒng)學習筆記管理初識Shell(1)

 [ 2016年6月20日 ] 【

初識Shell——bash

  Linux中的shell有點類似Windows下的cmd.exe或者.bat。管理整個計算機硬件的其實是操作系統(tǒng)的內核(Kernel),用戶無法與內核直接交互,所以通過shell來跟內核通信。即shell介于操作系統(tǒng)(Kernel)和用戶之間,它是用戶與內核的翻譯官,是一個命令解釋器。

  常見的shell種類有:Bsh、Csh、Ksh、Bash、Zsh

Bsh和Csh出現(xiàn)的較早,Ksh繼承了它兩的功能,Bash繼承了Bsh和Ksh的升級版,而且是Linux系統(tǒng)中默認的shell,Zsh則兼具了各種shell的程序有點,交互式操作效率更高,但仍不及bash應用廣泛。

  Shell環(huán)境的切換:

  登錄Shell:指用戶每次登錄系統(tǒng)后自動加載的Shell程序,大多數(shù)Linux系統(tǒng)采用 /bin/bash 作為默認登錄Shell;/etc/shells 文件記錄了系統(tǒng)支持的有效登錄Shell

 

[root@localhost ~]# cat /etc/shells   ==>使用chsh -l命令也可查看
/bin/sh
/bin/bash
/sbin/nologin
/bin/tcsh
/bin/csh
/bin/ksh 
[root@localhost ~]#

  默認的shell是bash,那么如何切換shell環(huán)境呢?分為兩種,一種是臨時切換,即當此終端關閉時,下次啟動仍然是bash,方法很簡單,直接在終端輸入shell名稱;第二種則是更改用戶登錄Shell,需要修改/etc/passwd文件中用戶記錄的最后一個字段,或者像前面講到的使用修改用戶的命令:usermod  -s  shell程序路徑   用戶名,也可以使用chsh命令,下次登錄有效。

  查看當前shell可以通過/etc/passwd來查看,要查看系統(tǒng)默認使用的shell,可以使用echo $SHELL。

  bash的常用功能:

1)Tab鍵自動補齊

這個功能可以讓您少打很多字,并且確定輸入是正確的。tab鍵接在一串命令的第一個字后面,則為命令補全;若接在一串命令的第二個字后面,則為文件補全;直接在bash提示符后面按兩下tab鍵,則能顯示所有可執(zhí)行的命令。

2)命令編輯快捷鍵

如之前提到的ctrl+D,ctrl+L,ctrl+U等

3)命令歷史

 保存用戶曾經執(zhí)行過的命令操作;存放位置是:~/.bash_history隱藏文件;查看歷史命令只需使用history命令就行了。

 調用歷史命令:

  !n:執(zhí)行歷史記錄中的第n條命令

  !str:執(zhí)行歷史記錄中以“str”開頭的命令

 設置記錄歷史命令的條數(shù):修改HISTSIZSE參數(shù)即可(在/etc/profile文件里),默認為1000條。

(備注:正確使用歷史命令可以有效提高命令行輸入的效率,例如:如果之前不久執(zhí)行過“service network restart”命令,則重新修改了網卡的配置文件以后,通常只需要執(zhí)行“!ser”操作即可調用該歷史命令,以重啟network服務。合理控制歷史命令的條數(shù)可以提高安全性,root用戶的命令歷史一般建議設置為少于100條)

4)命令別名

 為使用較高的復雜命令行設置間斷的調用名稱,存放位置是:~/.bashrc隱藏文件。查看命令別名只需用alias命令即可。

(備注:手動使用alias命令設置的別名只在當前Shell環(huán)境中有效,如alias rm='rm -i';若需每次登錄Shell環(huán)境時設置的別名都有效,需要修改宿主目錄中的“.bashrc”文件,添加相應別名設置)

5)標準輸入輸出

交互式硬件設備: 

標準輸入:從該設備接收用戶輸入的數(shù)據(jù)

標準輸出:通過該設備向用戶輸出數(shù)據(jù)

標準錯誤:通過該設備報告執(zhí)行出錯信息

類型

設備文件

文件描述編號

默認設備

標準輸入

/dev/stdin

0

鍵盤

標準輸出

/dev/stdout

1

顯示器

標準錯誤輸出

/dev/stderr

2

顯示器

(備注:/dev/stdin、/dev/stdout、/dev/stderr這三個文件是一個符號鏈接,輸入輸出與重定向關系緊密)

6)重定向操作

改變標準輸入、標準輸出、標準錯誤的方向:

類型

操作符

用途

重定向標準輸入

<

將命令中接收輸入的途徑由默認的鍵盤更改為指定的文件

重定向標準輸出

>

將命令的執(zhí)行結果輸出到指定的文件中,而不是直接顯示在屏幕上

>>

將命令執(zhí)行的結果追加輸出到指定文件

重定向標準錯誤

2>

清空指定文件的內容,并將標準錯誤信息保存到該文件中

2>>

將標準錯誤信息追加輸出到指定的文件中

重定向標準輸出和

標準錯誤

&>

將標準輸出、標準錯誤的內容全部保存到指定的文件中,而不是直接顯示在屏幕上

7)管道操作

  管道操作符號是“|”,連接左右兩個命令,將左側的命令輸出的結果,作為右側命令的輸入(處理對象)。管道是腳本語言的特色,它可以講多個功能連接起來形成一個大的功能,這點與面向對象有很大的不同。

  例如我現(xiàn)在要查看歷史記錄命令的第4行:則可先將前4條命令顯示出來,在��示前4條命令的最后一條:history | head -4  |  tail  -1   這樣即取出了第四條命令。

本文糾錯】【告訴好友】【打印此文】【返回頂部
將考試網添加到收藏夾 | 每次上網自動訪問考試網 | 復制本頁地址,傳給QQ/MSN上的好友 | 申請鏈接 | 意見留言 TOP
關于本站  網站聲明  廣告服務  聯(lián)系方式  站內導航  考試論壇
Copyright © 2007-2013 中華考試網(Examw.com) All Rights Reserved
儋州市| 新河县| 苏尼特左旗| 英吉沙县| 潢川县| 泰宁县| 阿拉善盟| 阿勒泰市| 郁南县| 栖霞市| 三河市| 黑水县| 临海市| 延安市| 芜湖县| 澜沧| 崇明县| 重庆市| 正定县| 北海市| 姚安县| 尼勒克县| 武川县| 永定县| 博罗县| 临高县| 巴东县| 资溪县| 西林县| 南召县| 漯河市| 托克托县| 麻阳| 三原县| 清丰县| 伊金霍洛旗| 台东县| 梅河口市| 宜良县| 金湖县| 慈利县|