8.1 shell介紹linux
shell是系統跟計算機硬件交互時使用的中間介質,他只是系統的一個工具。在shell和計算機硬件之間還有一層東西——系統內核。用戶直接面對的不是計算機硬件而是shell,用戶把指令告訴shell,而後shell再傳輸給系統內核,接着內核再去支配計算機硬件去執行各類操做。shell
8.2 命令歷史bash
執行過的命令linux都會記錄,預設能夠記錄1000條歷史命令。這些命令保存在用戶的家目錄的bash_history文件中。正確退出當前shell時,在當前shell中運行的命令纔會保存至.bash_history文件中。工具
!是與命令歷史有關的一個特殊字符,該字符經常使用的應用有如下3個。blog
!!:連續兩個!表示執行上一條指令。字符串
!n:這裏的n是數字,表示執行命令歷史中的第n條指令。例如,!1002表示執行命令歷史中的第1002個命令。變量
history命令若是未改動過環境變量,默承認以把最近執行的1000條命令歷史打印出來。
!字符串(字符串大於等於1):例如!pw表示執行命令歷史中最近一次以pw開頭的命令。硬件
8.3 命令和文件名補全
別名
alias 是bash所特有的功能之一。unalias命令解除別名功能。執行alias命令,會看到目前系統預設的別名。im
history命令若是未改動過環境變量,默承認以把最近執行的1000條命令歷史打印出來。
!字符串(字符串大於等於1):例如!pw表示執行命令歷史中最近一次以pw開頭的命令。重定向
8.3 命令和文件名補全
別名
alias 是bash所特有的功能之一。unalias命令解除別名功能。執行alias命令,會看到目前系統預設的別名。
自定義命令的別名,其格式爲alias [命令別名]=[具體的命令]。
8.4 通配符
在bash下,能夠使用*來匹配零個或多個字符,用?匹配一個字符。
8.5 輸入/輸出重定向
輸入重定向用於改變命令的輸入,輸出重定向用於改變命令的輸出。輸出重定向更爲經常使用,它常常用於將命令的結果輸入到文件中,而不是屏幕上。輸入重定向的命令是<,輸出重定向的命令是>。另外,還有錯誤重定向命令2>以及追加劇定向命令>>。