1、正規表示式
正規表示式用來在檔案中匹配符合條件的字串,正則式包含匹配
例子:hello world
grep "wo" 這一行中包含wo這個字串就可以找到這一行
萬用字元用來匹配符合條件的檔名,萬用字元是完全匹配。
hello world
ls wo 這一行中只能包括wo這個字串才能找到,即這行只有2個字元
grep -n "^12" test.txt 查詢以12開頭的行
grep -n "1.\2" test.txt 查詢以1開頭2結尾中間是任意字元的行
grep -n "12$" test.txt 查詢以12結尾的行
使用時對照上面的表即可
2、字元擷取
cut [選項] 檔名
-f 列號: 提取第幾列
-d 分隔符: 用指定分隔符分隔列
cut -f 1 student.txt 提取第一列
cut -d ":" -f 1,3 /etc/passwd 根據冒號提取1,3列
cut命令提取的檔案必須用製表符分隔,不然會擷取失敗
printf '輸出型別輸出格式' 輸出內容
%ns 輸出字串,n是數字指代輸出幾個字元
%ni 輸出整數,n指代輸出幾個數字
%m.nf 輸出浮點數。m和n是數字。指代輸出的位數和其中小數的輸出位數 8.2f 表示一共輸出8位,小數輸出2位
printf %s 1 2 3 4 5 6 輸出123456
printf %s %s %s 1 2 3 4 5 6 輸出 %s %s 1 2 3 4 5 6
printf 『%s %s %s\n』 1 2 3 4 5 6
輸出: 1 2 3
4 5 6
awk '條件1 條件2...' 檔名
awk '' student.txt 輸出第一列和第二列
df -h | awk 'print $1 $5' 提取df -h 輸出內容的第一列和第五列
sed 是一種輕量級流編輯器。sed主要是用來將資料進行選區、替換、刪除、新增的命令。
sed [選項] '[動作]' 檔名
選項:-n 只把經過sed命令處理過的行輸出到螢幕
-e 允許對輸入資料應用多條sed命令編輯器
-i 用sed的修改結果直接修改讀取資料的檔案,而不是由螢幕輸出
動作:a\: 追加,在當前行末尾新增,新增多行時,除最後一行,每一行末尾要加「\」
c\: 行替換 用c後面的字串替換源資料行,替換多行時,除最後一行,每一行末尾要加「\」
i\: 插入 在當前行前插入一行或多行資料,多行時,除最後一行,每一行末尾要加「\」
d\: 刪除,刪除指定行
p\: 列印 輸出指定行
s\: 字串替換
sed '2p' student.txt
sed -n '2p' student.txt
sed '1,2d' student.txt
sed '1i hello' student.txt
sed 's/舊字串/新字串/g' 檔名
sed '2s/n/y/g' student.txt 把第二行中的n換成y
linux shell 程式設計
bin bash comments your commands go here 首行中的符號 告訴系統其後路徑所指定的程式bash即是解釋此指令碼檔案的shell程式。除第一行外,以 開頭的行就是注釋行,直到此行的結束。如果一行未完成,可以在行尾加上 這個符號表明下一行與此行會合併為同一行。有環境變...
linux shell 程式設計
1 程式設計入門 shell的簡介。從程式設計師的角度來看,shell本身是一種用c語言編寫的程式,從使用者的角度來看,shell是使用者與linux作業系統溝通的橋梁。使用者既可以輸入命令執行,又可以利用 shell指令碼程式設計,完成更加複雜的操作。在linux gui日益完善的今天,在系統管理...
Linux Shell 程式設計
檔案描述 shell 代號 dev stdin 標準輸入,一般指的是鍵盤輸入 dev stdout 標準輸出,一般指終端顯示器 dev stderr 標準錯誤,一般指終端顯示器 l輸出重定向 l輸入重定向 l追加重定向 l錯誤重定向 2 l輸出和錯誤同時重定向 應用例子 1.將 ls的結果輸出到檔案...