bash的基礎特性
(2):
1.命令別名(alias)
通過alias命令實現
(1)alias : 顯示當前
shell
程序所有可用的命令別名
(2)alias name=」value」
定義別名name,其相當於執行命令
value
注:在命令列中定義的別名,僅對當前shell程序有效,若果想永久有效,要定義在配置檔案中
僅對當前使用者: ~/.bashrc
對所有使用者有效:/etc/bashrc
bash程序重新讀取配置檔案:
source /path/to/config_file
2.glob(globing) linux名稱通配機制
bash中用於實現檔名「通配」
萬用字元:*,?,
[ ]
(1)*
任意長度的任意字元
a*b: aab , ab , a123b , abc(x)
(2)?
任意單個字元
a?b: aab ab(x) a12b(x)
(3)[ ]
匹配指定範圍內的任意單個字元
[0~9]
[a~z]
3.bash快捷鍵
ctrl+l: 相當於
clear清屏
ctrl+a: 跳轉至命令首部
ctrl+e
跳轉至命令結尾處
ctrl+c: 取消命令執行
ctrl+u: 刪除命令列首至游標所在處的所有內容
ctrl+k: 刪除游標所在處至命令行尾的所有內容
4.bash的
i/o重定向及管道
程式:指令+資料
讀入資料:input
輸出資料:output
開啟的檔案都有乙個fd: file descriptor(檔案描述符)
標準輸入:keyboard (檔案描述符:
0)(若預設輸入,則預設輸入為鍵盤)
標準輸出:monitor (檔案描述符:
1)(顯示器)
標準錯誤輸出:monitor 2
i/o重定向:改變標準位置
輸出重定向:command > new_pos , command >> new_pos
> : 覆蓋重定向,目標檔案中的原有內容會被清除
>>:追加重定向,新內容會被追加至目標檔案
# set -c : 禁止將內容覆蓋輸出至已有檔案中
#set +c允許
強制覆蓋:>|
2> : 覆蓋重定向錯誤輸出資料流
2>>: 追加重定向錯誤輸出資料流
注:正確和錯誤為兩種不同的資料流
標準輸出和錯誤輸出各自定向至不同位置:
command> /path/to/file.out 2> /path/to/error.out
合併標準輸出和錯誤輸出至同一資料流進行重定向
&>:覆蓋重定向
&>>:追加重定向
command > /path/to/file.out 2> &1(功能同上)
輸入重定向:
<
tr字元轉換命令:轉換或刪除字元
tr [options]... set1 [set2]
-d: 刪除資訊中
set1
這個字串
例:tr 『a-z』 『a-z』 < /etc/fstab
管道:command|command|...
注:最後乙個命令會在當前shell的子
shell
程序中執行
wc:統計輸出資訊的整體資料
-l: 僅顯示行數
-w: 僅顯示單詞數
cut: 將一段資訊的某一段切出來
-d: 後面接分割字元,與
-f一起使用
-f: 依據
-d的分隔符將一段資訊切割成數段,用
-f取出第幾段的意思
-c: 以字元
(characters)
的單位取出固定字元區間
例:echo $path | cut -d 『:』 -f 3-5,7 //以』:』分割,取出第3,4,5,7列
sort: 排序命令
-f: 忽略大小寫
-r: 反向排序
-t: 分隔符
-k: 以那個區間
(field)
來進行排序
-n: 使用數值大小進行排序
-u: 去重顯示,相同的資料中只顯示一次
例:cat /etc/passwd | sort -t 『:』 -k 3 //以』:』來分割,以第三列進行排序
uniq: 將重複的資料僅列出乙個顯示
-c: 記錄重複的次數
-i: 忽略大小寫字元的不同
注:連續且相同為重複
cp: 複製檔案或目錄
cp src dest: cp 源 目的
src是檔案:
如果目標不存在,則新建dest,並將
src中內容填充至
dest中
如果目標不存在
如果dest是檔案,將
src中的內容覆蓋至
dest中
如果dest是目錄,在
dest
下新建與原檔案同名的檔案,並將
src中內容填充至新檔案中
cp src... dest
src.. 多個檔案
dest必須存在,且為目錄,其他情況均會出錯
常用選項:
-i: 若目標檔案已經存在,在覆蓋時會先詢問操作的進行(常用)
-r: 遞迴持續複製,用於目錄的複製行為
-p: 連同文件的屬性一起複製過去,而非使用預設屬性(備份常用)
-a: 相當於
-pdr
mv(移動檔案與目錄,或更名)
-f: force強制的意思,如果目標檔案已經存在,不會詢問而直接覆蓋
-i: 若目標檔案已經存在詢問是否存在
rm(刪除檔案或目錄)
-f: 忽略不存在的檔案,不會出現警告資訊
-i: 互動模式,在刪除前會詢問使用者是否操作
-r: 遞迴刪除,最常用在目錄的刪除。是非常危險的引數
Linux bash基礎特性
2.2 檔案相關 2.3 指令碼程式設計相關 2.4 其他 shell程式是獨特的程式,這個程式提供了乙個介面 就那黑乎乎的命令列介面,即linux的終端介面 使用者通過這個介面訪問作業系統核心的服務,從而解析使用者提供的命令。而bash bourne again shell 是眾多shell的一種...
Linux Bash基礎特性
1 命令補全 bash執行命令 內部命令 help命令 外部命令 bash根據path環境變數定義的路徑,自左而右在每個路徑搜尋以給定命令名命名的文 件,第一次找到即為要執行的命令 直接補全 tab,使用者給定的字串只有一條惟一對應的命令 以使用者給定的字串為開頭對應的命令不惟一,則再次tab會給出...
Linux Bash基礎特性
1 命令補全 bash執行命令 內部命令 help命令 外部命令 bash根據path環境變數定義的路徑,自左而右在每個路徑搜尋以給定命令名命名的文 件,第一次找到即為要執行的命令 直接補全 tab,使用者給定的字串只有一條惟一對應的命令 以使用者給定的字串為開頭對應的命令不惟一,則再次tab會給出...