用戶與管理:
shell
root用戶:超級管理員,權限已接近完整的系統控制
c#
對系統的損害幾乎有無限的能力,除非必要,不要使用root登陸機器
緩存
普通用戶:權限有限
bash
終端 terminal:服務器
服務器非必要部件 ssh
用戶與主機交互,必然用到的設備ide
物理終端:直接接入本機的顯示器和鍵盤設備 /dev/console 虛擬終端:spa
附加在物理終端之上的以軟件方式虛擬實現的終端,設備文件路徑:/dev/tty#,命令行
CentOS 6默認啓動6個虛擬終端 Ctrl+Alt+F#: [1,6] 設計
圖形終端:屬於虛擬終端,附加在物理終端之上的以軟件方式虛擬實現的終端,但額外會提供桌面環境;
模擬終端:圖形界面打開的命令行以及基於ssh協議或 telnet協議等遠程打開的界面,設備文件:/dev/pts/# [0, ∞)
查看當前的終端設備:tty什麼是shell?
Shell 是Linux系統的用戶界面,提供了用戶與內核進行交互操做 的一種接口。它接收用戶輸入的命令並把它送入內核去執行。
shell也被稱爲LINUX的命令解釋器(command interpreter)
shell是一種高級程序設計語言
如圖所示:
bash shell:
bash 是GNU計劃重要的工 具軟件之一,目前也是 Linux標準的shell ,與sh兼容。
顯示當前使用的shell命令: echo ${SHELL}
顯示當前系統所使用的全部shell: cat /etc/shells
命令運行過程:
輸入命令後,回車,shell程序找到鍵入命令所對應的可執行程序或代碼 ,並由其分析後提交給內核分配資源將其運行起來
shell中可執行的命令分爲兩大類,能夠用 type COMMADN 查看
內部命令:由shell自帶的,並且經過某命令形式提供 enable命令能夠啓用或禁用內部命令
外部命令::在當前系統的某文件系統路徑下有對應的可執 行程序文件
hash命令:搜尋到的外部命令路徑結果緩存至kv(key-value)存儲中
多選項,以及多參數和命令之間使用空白字符分隔
取消和結束命令執行:Ctrl+c,Ctrl+d
多個命令能夠用;符號分開
一個命令能夠用\分紅多行
具備補全功能的Tab鍵:
命令補全
路徑補全
bash的快捷鍵:
Ctrl+l 清屏,至關於clear命令 Ctrl+c 取消命令的執行 Ctrl-a 會移動到命令行的最前面 Ctrl-e 會移動到命令行的最後面 Ctrl-u 會刪除到行首 Ctrl-k 會刪除到行尾 arrow ctrl-b ctrl-f會向左或向右移動一個字符 Esc-b 左移一個單詞 Esc-f 右移一個單詞
Linux一些簡單的命令:
cal -顯示日曆
screen命令:
功能:用於協同工做,必須登陸同一個用戶
打開新的screen: screen –S [SESSION]
加入會話: screen –x [SESSION]
退出並關閉screen: exit
剝離當前screen: Ctrl+a,d
顯示全部已經打開的screen: screen -ls
恢復某screen screen -r [SESSION]
echo命令:
功能:功能很強大,這只是一小部分功能,如顯示字符
echo會將輸入的字符串送往標準輸出。
輸出的字符串間以空白字符隔開, 並在最後加 上換行號
echo "$VAR_NAME": 變量會替換,雙引號表弱引用
echo '$VAR_NAME': 變量不會替換,強引用
$echo –e 「Enter the file name: \c」 ## echo 須要使用-e 參數來打印轉義字符.
echo命令選項: -n 不在字符的最後自動換行 -e 若字符串中出現如下字符,則特別加以處理, 而不會將它當成通常文字輸出: \a 發出警告聲 \b 退格鍵 \c 最後不加上換行符號 \n 換行且光標移至行首 \r 光標移至行首,但不換行 \t 插入tab \\ 插入\字符 \0nnn 插入nnn(八進制)所表明的ASCII字符 echo -e "\033[43;31mred color\033[0m" \xHH插入HH(十六進制)所表明的ASCII字符
命令行擴展、被括起來的集合:
命令行擴展:$( ) 或 `` :把一個命令的輸出打印給另外一個命令的參數
$ echo "This system's name is $(hostname) " This system's name is server1.example.com $echo "i am `whoami` " i am root
括號擴展:{ } :打印重複字符串的簡化形式
$ echo file{1,3,5} file1 file3 file5 $ rm -f file{1,3,5}