1. 程式人生 > >Linux bash介紹與使用

Linux bash介紹與使用

ash 倒數 想要 之間 箭頭 單詞 一般來說 周期 use

Linux————bash的簡單使用

對於一個操作系統來說,shell相當於內核kernel外的一層外殼,作為用戶接口。
一般來說,操作系統的接口分為兩類:
GLI:command line interface命令行接口
常見的有:sh csh ksh zsh bash tcsh
GUI:graphical user interface 圖形化用戶接口
常見的有:Gnome KDE Xfce

bash及其特性:

1、bash實質上是一個可執行程序,一個用戶的工作環境。

2、在每一個shell下可以再打開一個shell,新打開的shell可以稱為子shell,每一個shell之間
是相互獨立的。

3、可以使用pstree命令查看當前shell下的子shell個數。

使用:

命令行編輯:
光標跳轉:
Ctrl + a:跳到命令行行首
Ctrl + e:跳到命令行行位
Ctrl + d:刪除光標所在字符
Ctrl + u:刪除光標到命令行首的所有字符
Ctrl + k:刪除光標到命令行尾的所有字符
Ctrl + l:清屏
在使用模擬終端時,使用Ctrl加左右箭頭,可以一次跳過一個單詞

命令歷史:
bash會自動記錄過去執行的命令,並緩存進內存。

查看命令歷史:history
-c:清空命令歷史
-d + 偏移量n m:刪除從第n個命令開始的m個字符,m默認為1
-w:保存命令歷史到歷史文件

當用戶正常退出,內存中的命令歷史會被保存到用戶家目錄中的bash history文件中
這是一個隱藏文件,bash history保存的歷史命令數量是有限的,默認為1000

HISTSIZE:一個環境變量,表示命令歷史緩沖區大小

命令歷史的使用技巧:
!n:顯示並執行的第n條命令
!-n:執行命令歷史中的倒數第n條命令
!!:執行上一次執行的命令
! + "":執行命令歷史中的最近一個以指定字符串開頭的命令
!$:引用上一個命令的最後一個參數

命令補全
在命令路徑下,在給出的字符串可以唯一表示該命令,按一下Tab鍵,會自動將命令補全
如果不能唯一表示,則按兩下Tab鍵,可以將以給出字符串開頭的所有命令全部列出。

路徑補全和命令補全類似

命令別名:
alias:設置命令別名
alias NAME = COMMAND [option],相當於變量賦值。
只能在當前shell聲明周期中有效

alias:查看已經定義的命令別名

ualias:取消已經定義的命令別名

如果加一個命令別名與一個命令的名稱相同,則使用時shell下運行的是該別名表示的命令,如
果想要使用原命令,則使用/COMMAND表示命令本身

命令替換:
將命令中的某個子命令替換為它的執行結果。
表示形式:
COMMAND $(子命令)
COMMAND `字命令` 註意,此處是反引號而不是單引號。

bash支持的引號:
`` 反引號,用於命令替換
"" 雙引號,弱引用,可以實現變量替換
‘‘ 單引號,強引用,不能實現變量替換

文件通配:globbing
* 用於表示任意長度的任意字符串,任意長度包括0
? 用於表示任意單個字符
[] 匹配任意指定範圍內的任意單個字符串
[:space:]表示空白符號
[:punct:]表示標點符號
[:lower:]表示小寫字母
[:upper:]表示大寫字母
[:alpha:]表示所有大小寫字母
[:digit:]表示數字
[:alnum:]表示數字和字母

[^] 表示匹配任意指定範圍外的單個字符

Linux bash介紹與使用