-
基礎正則表達式元字符表? ?
查看全部 -
sort查看全部
-
匹配的例子
查看全部 -
正則表達式“*”
查看全部 -
基礎正則表達式
查看全部 -
正則表達式,用于匹配符合條件的字符串,屬于包含匹配,使用 GREP,AWK,SED命令來支持;
通配符,用于匹配符合條件的文件名,屬于完全匹配,由于LS,FIND,CP不支持正則表達式,所以只能使用shell自身的通配符來實現
查看全部 -
1、
臨時刪除第二行的內容
sed '2d' test.txt
臨時刪除第二行到第四行的內容
sed '2,4d' test.txt
2、
-a(追加)在指定行的后面追加
sed '2a fhvnwiv' test.txt
-i(插入)在指定行的前面插入
sed '2i adfhfiqe' test.txt
3、
-c(行替換)
sed '2c wenfvjwiv' test.txt
-s(字符串替換)
sed 's/舊字符串/新字符串/g' 文件名
g代表是否把一整行的舊字符串改為新字符串,加了代表全改,不加就改第一個
sed '2s/13/14/g' test.txt
同時修改字符串,可以執行多條動作
sed? -e '2s/13/14/g;2s/14/15/g' test.txt
查看全部 -
例子;查看文件第二行
$ sed -n '2p' test.txt
查看全部 -
sed [選項] '[動作]' 文件名
選項:
-n:把進過sed處理的行輸出到屏幕上,沒加全部輸出
-e:加了可以執行多條命令
-i:沒加,執行臨時修改,加了永久修改文件
動作:
-a:追加,在當前行后添加一行或多行
-c:行替換,用c后面的字符串替換原數據行
-i:插入,在當前行插入一行或多行。
-d:刪除,刪除指定的行
-p:打印,輸出指定的行
-s:字符串替換,用一個字符串替換另外一個字符串。
格式為“行范圍s/舊字符串/新字符串/g”
查看全部 -
grep -v:顯示不包含匹配文本的所有行。反向查找
cat test.txt | grep -v "name" | awk '$3>1{print $2}'
查看全部 -
FS內置變量:作用是指定分割符是什么
例子:
cat /etc/passwd | grep '/bin/bash' | awk 'BEGIN{FS=":"}{print $1 "\t" $3}'
BEGIN作用是在執行讀取內容放到$1這些變量之前就執行的條件
如果沒有這個條件的話,第一行可能沒有執行你的查詢條件,因為他已經讀取內容放進$1這些變量里了
查看全部 -
為什么使用awk不是呀cut因為有一些字符串不一定以一些規律的分隔符分割所以我們需要使用更強大的awk來截取字符串
例如:df -h | cut -f 5 -d " "
這樣是截取不出來的
可以使用awk
df -h | grep "/dev/vda1" | awk '{print $5}' | cut -f 1 -d "%"
查看全部 -
awk命令
awk '條件1{動作1}條件2{動作2}...' 文件名
例子:
使用cut
cut -f 1,3 test.txt使用awk
(其中的$1代表第一個字段,$3第三個字段,$0代表每一行的記錄)
awk '{printf $1 "\t" $3 "\n"}' test.txt
查看全部 -
1、例子
printf '%s' 123456(注意要加單引號)
printf '%s\t%s\t%s\n'? 1 2 3 4 5 6
printf '%s\t%s\t%s\t%s\n' $(cat test.txt)
2、
printf是給awk命令使用的
print代表默認在最后加入換行符(linux命令默認沒有安裝),
printf默認沒有加入換行符
查看全部 -
printf '輸出類型輸出格式' 輸出內容
輸出類型:
-%ns:輸出n個字符
-%ni:輸出n個數字
-%8.2f:共輸出8位數,其中兩位是小數,六位是整數
輸出格式:
- \b:輸出退格鍵
- \f:輸出清除屏幕
- \n:換行
- \r:回車
- \t:水平Tab鍵
- \v:垂直Tab鍵
查看全部
舉報