日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

shell基础--正则表达式行列提取

發布時間:2023/12/16 编程问答 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 shell基础--正则表达式行列提取 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

一、概述:什么是正則表達式

二、基礎正側表達式

1..(點)

2.*:

3.^符號

4.和上邊^相對$

5.\{n,m\}符號:

6.\{n,m\} :

7.[]符號

8.\符號

9.?\<符號和\>符號:

?三、擴展正則表達

1.()括號模式單元的使用:

四、字符截命令和替換命令

1.cut列提取命令:

2.文本處理工具awk

3.printf格式化輸出:

4.awk基本使用

awk的保留字:

關系運算符:

正則表達式:

awk內置變量

awk的條件

6.awk流程控制

7.awk中調用腳本

五、.sed命令 文件內增,刪,替換


一、概述:什么是正則表達式

????????正則表達式用來在文件中匹配符合條件的字符串,通配符用來匹配符合條件的文件名。其實這種區別只在shell中適用,因為用來在文件當中搜索字符串的命令,如grep、awk、sed等命令可以支持正則表達式,而在系統當中搜索文件的命令,如:ls、find、cp這些命令不支持正則表達式,所以只能使用shell自己的通配符來進行匹配了。??

二、基礎正側表達式

元字符

作用

.

匹配除換行符以外的任意一個字符

*

前一個字符匹配0或任意多次

^

匹配行首。例:^hello會匹配以hello開頭的行

$

匹配行尾。例:hello$會匹配以hello結尾的行

[]

匹配中括號中指定的任意一個字符,只匹配一個字符。例:[aeiou]匹配任意一個元音字母。[0-9]會匹配任意一位數字。[a-z][0-9]匹配小寫字和一位數字構成的兩位字符。

[^]

匹配除中括號的字符以外的任意一個字符。例:[^0-9]匹配任意一位非數字字符。

\

轉義符。用于取消,將特殊符號的含義取消。

\{n\}

表示其前面一個字符恰好出現n次。例:[0-9]\{4\} 匹配4位數字。

[1][3-8][0-9]\{9\}匹配手機號

\{n,\}

表示其前面一個字符出現不小于n次。例:[0-9]\{2,\}匹配2位及以上的數字。

\{n,m\}

表示前面的一個字符至少出現n次,最多出現m次。例:[a-z]\{6,8\}匹配6-8位的小寫字母。

在~/.bashrc文件中添加別名:

【】# vim .bashrc

alias grep='grep --color=auto'

【】# source /root/.bashrc

1..(點)

用于匹配除換行符以外的任意一個字符。例如r.t可以匹配rat、rbt。但不能匹配root。

?

2.*:

????????用于匹配前一個字符零次或任意多次,比如ab*就會匹配a、ab、abbbb等。*還可以和.組合使用。比如“.*”代表任意長度不包含換行符的匹配。

????????(上面例子試圖找到連續的r字符緊跟t的行。因為*會匹配前一個字符零次或多次,所以出現了只找到t的情況。)

(如果是rr*代表這行字符一定要有一個r,但后邊有沒有r都可以,至少會匹配包含有一個r的行)

?

?(正則是rrr*的時候會匹配最少包含兩個連續r的字符串)

?

(如果把r*t換成r.*t代表查找包含字母r,后面緊跟任意長度的字符,再跟一個字母t的行)

3.^符號

稱為尖角號。用于匹配開頭的字符:

(匹配以root開頭的行)

?

4.和上邊^相對$

匹配的是尾部。比如:abc$匹配的就是以abc結尾的行:

(在/etc/passwd中匹配以bash結尾的行)

?

(匹配了以r開頭,中間有一串任意字符,以h結尾的行)

?

5.\{n,m\}符號:

使用此符號可以更加靈活的控制字符的重復次數。

\{n\}

(匹配前面一個字符n次。上面匹配了包含root的行)

\{n,\}

?(匹配前面的一個字符至少n次以上,含n次)

6.\{n,m\} :

?

(匹配前面的一個字符n到m次)

7.[]符號

用于匹配方括號內出現的任意字符。比如單項選擇題的選項A、B、C、D,用正則表達就是[ABCD]。如果遇到較大的范圍就是[A-Z],會任意大寫字母。[A-Za-z]匹配所有字母。“-”做范圍限定。如果要匹配不是大寫字母的字符的話需要用到“^(尖角號)”在之前的學習中^代表匹配開頭的意思。但是尖角號出現在[]中。含義就是取反。[^A-Z](不是大寫字母)。下面舉例匹配手機號:

?(首先,在文件中寫入幾串數字。其中有符合手機號條件的字符串。)

(想要匹配手機號,要知道手機號是11位連續的數字。第一位一定是1,所以表示為^1。第二位可能是3(移動)或8(聯通),表示為[38]。后面連續9個任意數字表示為[0-9]\{9\}。)

?(在匹配的結尾加上一個$符號,指定結尾為0-9九位數字結尾。否則只會匹配前面11位數字,至于之后的數字或字母并不限制。)

8.\符號

我們之前了解到.*代表的是任意長度的不包含換行的重復字符。但是如果想匹配任意長度.的時候。就需要用到\了。

例:先在/etc/passwd中插入...和..

(在/etc/passwd中查找至少有一個.的行)

9.?\<符號和\>符號:

這兩個符號分別用于界定左邊界和右邊界。比如\<hello\>用來精確匹配hello這個字符串:

(匹配hello成功。helloworld匹配失敗,沒有輸出。)

?三、擴展正則表達

????????顧名思義,擴展正則表達式一定是針對基礎正則表達式的一些補充。擴展正則表達式比基礎正則表達式多了幾個重要的符號。不過在使用這些擴展符號的時候需要使用egrep命令。

擴展元字符

作用

+

前一個字符匹配1次或任意多次。例:go+gle會匹配gogle、google或gooole如果有更多個o也會匹配。

前一個字符匹配0次或1次。

如colou?r可以匹配colour或color。

|

匹配兩個或多個分支選擇。

如was|his會匹配包含was的行,也會匹配包含his的行。

()

匹配其整體為一個字符,可以理解為由多個單個字符組成的

大字符。

如(dog)+會匹配dog、dogdog、dogdogdog等,因為被()包含的字符會當成 一個整體。

但hello (world | earth ) 會匹配hello world 及 hello earth

1.()括號模式單元的使用:

【】# cat test

love is lover

like is liker

love is liker

like is lover

【】# egrep --color=auto "(l..e).*(l..e)" ./test

love is lover

like is liker

love is liker

like is lover

【】# egrep --color=auto "(l..e).*(\1)" ./test

#可用(\1)表示引用第一個模式單元,也就是第一次匹配第一行(l..e)在匹配到love的時候,就確定了l和e之間的..為o和v,在之后(\1)引用的時候也只會匹配love的字符串。

第二行like同理。第二行匹配時..變成了ik,所以匹配到了后邊like字符串,而不能匹配love字符串。

love is lover

like is liker

、字符截命令和替換命令

1.cut列提取命令:

子選項:-f 列號 #提取第幾列

-d 分隔符??? #按照指定分隔符分割列

-c 字符范圍? #不依賴分隔符來區分列,而是通過字符范圍(行首為0)來進行字段提取。

“n-”表示從第n個字符到行尾:“n-m”從第n個字符到第m個字符:“-m”表示從第1個字符到第m個字符。

cut命令的默認分隔符是制表符。

首先建立一個測試文件:

【】# cat cj.txt

ID?? Name?? gender Mark

1 ??? zhaosan??? M?? 87

2 ??? lisi?? ??? M?? 90

3 ??? wangwu ??? M?? 9

[root@localhost ~]# cut -f 2 cj.txt???? #提取第二列內容

Name

zhaosan

lisi

wangwu

如果想要提取多列的時候,只要將列號用“,”分開:

【】# cut -f 2,3 cj.txt

Name ??? gender

zhaosan? ??? M

lisi ??? ??? M

wangwu?? ??? M

cut可以按照字符進行提取,需要注意的是“8-”代表的是提取所有行的第八個字符開始到行尾。而“10-20”代表提取所有行的第十個字符到第二十個字符。“-8”代表的是提取所有行從行首到第八個字符:

【】# cut -c -8 cj.txt

ID?? ??? Name

1 ?? ??? zhaosa

2 ?? ??? lisi ? M ? ???

3 ?? ??? wangwu

(提取開頭到第八個字符。結果格式還是比較亂的。因為每行字符個數不相等)

【】# cut -d ":" -f 1,3 /etc/passwd

root:0

bin:1

daemon:2adm:3

lp:4

sync:5

shutdown:6

halt:7

mail:8

(以:為分隔符,提取/etc/passwd文件的第一列和第三列)

如果想用cut命令截取df命令的第一列和第三列,格式如下:

【】# df -h | cut -d " " -f 1

Filesystem

/dev/sda3

tmpfs

/dev/sda1

/dev/sr0

(但是cut命令不夠智能,因為在截取1列之后。如果繼續截取2,3,4,5.....都會返回為空。因為df -h 的返回值空格太多了)

2.文本處理工具awk

1)awk是基于列的文本處理工具,awk認為文件都是結構化的,也就是說都是由單詞和各種空白字符組成的,這里的“空白字符”包括空格、TAB以及連續的空格和TAB等。每個非空白的部分叫做“域”從左到右依次是第一個域第二個域等。$1、$2分別用于表示域,$0則表示全部域。

-F “”? 指定分割符

$NF?? 最后一列

3.printf格式化輸出:

print和printf區別:

使用printf 需要指定字段格式

使用print? 默認輸出格式

格式:printf ‘輸出類型輸出格式’ 輸出內容

輸出類型:

%ns:輸出字符串。n是數字指左對齊的情況下格式寬度“%-ns表示左對齊”。

%ni:輸出整數。n是數字指右對齊的情況下格式寬度“%-ni表示左對齊”。

%m.nf:輸出浮點數。m和n是數字,指代輸出的整數位和小數位。但整數位并不會受限。小數位四舍五入

輸出格式:輸出格式要加雙引號

\n?? #換行。

\t?? #水平輸出退格鍵,也就是tab鍵。

我們繼續用cj.txt文件演示printf命令:

【】# printf '%s' $(cat ./cj.txt)

IDNamegenderMark1zhaosanM872lisiM903wangwuM89

【】#

【】#

(在使用printf命令時,如果不指定格式就會把所有輸出內容連在一起。在我們使用cat等文本輸出命令之所以可以按照格式輸出,是因為cat命令已經設定了輸出格式。那么,為了用printf輸出合理的格式,應該進行如下操作)

【】# printf '%s\t%s\t%s\t%s\t\n' $(cat ./cj.txt)

ID? ??? Name?? ??? gender ??? Mark

1?? ??? zhaosan??? ??? M?? ??? 87

2?? ??? lisi?? ??? ??? M ? ??? 90

3 ? ??? wangwu ??? ??? M ? ??? 89

(注意:在printf命令的單引號中,只能識別格式輸出符號,而手工輸入的空格是無效的)

如果不想把成績當成字符串輸出,二十按照整數和浮點型輸出則需要進行如下操作:

【】# cat ./cj.txt

ID ??? Name ? ??? gender ??? ??? Mark

1 ? ??? zhaosan ?? M ? ??? ??? ??? 87.12

2 ? ??? lisi?? ??? M ? ??? ??? ??? 90.123

3 ? ??? wangwu ??? M ? ??? ??? ??? 89.1233322

(為了測試浮點型的作用首先修改cj.txt文件)

【】# printf '%i\t%s\t%s\t%8.2f\t\n' $(cat cj.txt | grep -v Name)

1 ? ??? zhaosan ?? M ? ??? 87.12

2 ? ??? lisi ? ??? M ? ??? 90.12

3 ? ??? wangwu ??? M ? ??? 89.12

(成功輸出了文件內信息,浮點型只輸出小數點后兩位。)

4.awk基本使用

awk使用格式:awk ‘條件1{動作1} 條件2{動作2}....’ 文件名

條件(Pattern):

一半使用關系表達式作為條件。這些關系表達式非常多。

例如:x>10????? 判斷變量x是否大于10

x == y?? 判斷變量x是否等于y

A !~ B?? 判斷字符串A是否不包含能匹配B表達式的字符串

動作(Action):

格式化輸出

流程控制語句

我們首先學習awk基本用法,也就是只看看格式化輸出動作的作用是什么。條件類型和流程控制語句我們在后面再詳細介紹:

-F “”? 指定分割符

$NF?? 最后一列

awk的保留字:

條件

條件

BEGIN

在awk程序一開始時,尚未讀取任何數據之前執行BEGIN后的動作只在程序開始執行一次

END

在awk程序處理完所有數據,即將結束時執行。

END后的動作只在程序結束時執行一次。

關系運算符:

關系運算符如果查找字符的話,要加雙引號。

條件

說明

>

大于

<

小于

>=

大于等于

<=

小于等于

==

等于。用于判斷兩個值是否相等,如果是變量賦值請使用“=”號

!=

不等于

~

判斷字符串A中是否包含能匹配B表達式的字符串

!~

判斷字符串A中 是否不包含能匹配B表達式的字符串

正則表達式:

/正則表達式/

如果在“//”中可以寫入字符,也可以支持正則表達式

awk內置變量

awk內置變量

作用

$0

代表目前awk所讀入的整行數據。我們已知awk是一行一行讀入數據的,$0就代表當前讀入行的整行數據。

$n

代表目前讀入行的第n個字段。

NF

當前行擁有的字段(列)總數。

NR

當前awk所處理的行,是總數據的第幾行。

FS

用戶定義分隔符。awk的默認分隔符是空格。如果想要使用其他分隔符需要FS變量定義。 可以使用FS定義分隔符但是要制定條件為BEGIN否則第一行不生效。

【】# awk '{printf $2 "\t" $3 "\n"}' cj.txt #awk后的的格式要加單引號

Name ? ??? gender

zhaosan??? M

lisi?? ??? ??? ??? ??? M

wangwu ??? M

#列出第二列和第六列

在之前用cut截取df命令的結果時,結果并不盡如人意。那么試試awk命令:

【】# df -h | awk '{print $1 "\t" $3}'

Filesystem

Used

/dev/sda3 ??? ??? 3.8G

tmpfs 224K

/dev/sda ? ??? ??? 130M

/dev/sr0 ? ??? ??? 4.2G

通過awk命令可以截取指定的列,但是會發現格式并不是很規范,awk也是有命令可以調整截取后列的格式的左右對齊:

【】# df -h | awk '{printf "%-30s %-30s\n",$1,$5}'

文件系統 ? ??? ??? ??? ??? ??? 已用%

devtmpfs?? ??? ?? ??? ??? 0%

tmpfs ??? ??? ??? ??? ??? 0%

tmpfs? ??? ??? ?? ??? ??? 1%

tmpfs ??? ??? ??? ??? ??? 0%

/dev/mapper/cl-root ??? 10%

/dev/sda1 ??? ??? ??? ??? 14%

tmpfs ??? ??? ??? ??? ??? 1%

tmpfs ??? ??? ??? ??? ??? 1%

例1:顯示時使用10個字符串右對齊顯示。如果要是顯示字符串不夠10個寬度,以字符串的左邊自動添加。一個字符占一個寬度,默認是右對齊。

【】# awk -F ":" '{printf "%10s\n",$1}' /etc/passwd

root

bin

daemon

adm

例2:使用10個寬度,左對齊顯示:

【】# awk -F ":" '{printf "%-10s\n",$1}' /etc/passwd

rootbin

daemon

adm

例3:第1列使用15個字符寬度左對齊輸出,最后一列($NF)使用15個字符寬度右對齊輸出

[root@xuegod63 ~]# awk -F: '{printf "USERNAME: %-15s %15s\n",$1,$NF}'

/etc/passwd

USERNAME: root??? ??? /bin/bash

USERNAME: bin ??? ??? /sbin/nologin

  • awk的條件

  • 不寫BEGIN每次對每行執行每個動作

    BEGIN 在開頭執行一次

    END在結尾執行一次

    awk的保留字:

    條件

    條件

    BEGIN

    在awk程序一開始時,尚未讀取任何數據之前執行BEGIN后的動作只在程序開始執行一次

    END

    在awk程序處理完所有數據,即將結束時執行。

    END后的動作只在程序結束時執行一次。

    如果有多個BEGIN或END語句,awk會按照他們出現在程序當中的順序來執行。

    關系運算符:

    關系運算符如果查找字符的話,要加雙引號。

    條件

    說明

    >

    大于

    <

    小于

    >=

    大于等于

    <=

    小于等于

    ==

    等于。用于判斷兩個值是否相等,如果是變量賦值請使用“=”號

    !=

    不等于

    ~

    判斷字符串A中是否包含能匹配B表達式的字符串

    !~

    判斷字符串A中 是否不包含能匹配B表達式的字符串

    正則表達式:

    /正則表達式/

    如果在“//”中可以寫入字符,也可以支持正則表達式

    BEGIN:awk的保留字,是一種特殊的文件類型。BEGIN的執行時機是“在awk程序一開始時,尚未讀取任何數據之前執行。”一旦BEGIN后的動作執行一次,當awk開始從文件中讀入數據,BEGIN的條件就不再成立,所以BEGIN定義的動作只能被執行一次。

    例:

    【】# awk '{printf "This is a cj \n"} {printf $2 "\t" $6 "\n"}' cj.txt

    This is a cj

    Name

    This is a cj

    zhaosan

    This is a cj

    lisi

    This is a cj

    wangwu

    (首先如果不加BEGIN的話,this is a cj 會在每行后打印)

    【】# awk 'BEGIN {printf "This is a cj \n"} {printf $2 "\t" $4

    "\n"}' cj.txt

    This is a cj

    Name

    Mark

    zhaosan 87.12

    lisi

    90.123wangwu 89.1233322

    (添加BEGIN,讓this is a cj在程序開始時執行)

    END:也是awk的保留字,不過剛好和BEGIN相反。END是在awk程序處理完所有數據,即將結束時執行。END后的動作只在程序結束時執行一次。

    例:

    【】# awk 'END {printf "The END \n"} {printf $2 "\t" $4 "\n"}'

    cj.txt

    Name ? ??? Mark

    zhaosan ?? 87.12

    lisi ? ??? 90.123

    wangwu ??? 89.1233322

    The END

    (在輸出結尾輸出“the end”這并不是文檔本身的內容,而且只會執行一次。)

    所有BEGIN應該放在起始處,而END語句應該放在結尾。

    關系運算符:

    舉例來說,加入想要查找成績大89分的學員,就可以進行如下操作:

    【】# cat cj.txt | grep -v Name | awk '$4 >= 89 {printf $2 "\n"}'

    lisi

    wangwu

    加入了條件之后,只有條件成立動作才會執行,如果條件不滿足,則動作不運行。通過這個

    實驗大家可以發現,雖然awk是列提取命令,但是也要按行來讀入的。

    例:想查找用戶lisi的成績:

    【】# cat cj.txt

    ID ??? Name ? gender ??? Mark

    1 ? ??? zhaosan ?? M ? ??? 87.12

    2 ? ??? lisi ? ??? M ? ??? 90.123

    3 ? ??? wangwu ??? M ? ??? 89.1233322

    【】# awk '$2~ /lisi/ {printf $4 "\n"}' cj.txt

    90.123

    (注:在awk中使用//包含的字符串,awk命令才會查找。也就是說字符串必須使用//包含,

    awk命令才能正確識別。)

    ※正則表達式:如果想要讓awk識別字符串,必須使用//包含。

    例:

    【】# awk '/wangwu/ {print}' cj.txt

    3

    wangwu M

    89.1233322

    #打印wangwu的成績

    (awk中如果輸出字符的話,有兩種處理方式。print和printf。兩種方式的區別在于:

    printf:可以自定義輸出的模式,另外輸出內容之后不自動換行,print:輸出內容之后自動換行。print 中不能使用%s ,%d 或%c。)

    當使用df命令查看分區使用情況時,如果只想查看真正的系統分區的使用情況,而不想查看光盤和臨時分區的使用情況時:

    【】# df -h | awk '/sda[0-9]/ {printf $1 "\t" $5 "\n"}'

    /dev/sda3 ??? 23%

    /dev/sda1 ??? 16%

    (查詢包含有sda數字的行,并打印第一字段和第五字段。)

    5)awk內置變量

    awk內置變量

    作用

    $0

    代表目前awk所讀入的整行數據。我們已知awk是一行一行讀入數據的,$0就代表當前讀入行的整行數據。

    $n

    代表目前讀入行的第n個字段。

    NF

    當前行擁有的字段(列)總數。

    NR

    當前awk所處理的行,是總數據的第幾行。

    FS

    用戶定義分隔符。awk的默認分隔符是空格。如果想要使用其他分隔符需要FS變量定義。

    例:

    [root@localhost ~]# cat /etc/passwd | grep "/bin/bash" | awk '{FS=":"} {printf $1 "\t" $3 "\n"}'

    root:x:0:0:root:/root:/bin/bash

    (這里“:”生效了。但是并沒有把第一列和第三列截取出來,繼續用BEGIN命令試試)

    [root@localhost ~]# cat /etc/passwd | grep "/bin/bash" | awk 'BEGIN{FS=":"} {printf $1 "\t" $3 "\n"}'

    root 0

    (成功截取第一和第三字段的內容)

    cat /etc/passwd | grep "/bin/bash" | awk 'BEGIN {FS=":"} {printf $1 "\t" $3"\t" NR

    "\t"NF"\n"}'

    root ? 0 ? 1 ? 7

    (分隔符是“:” 輸出第一字段和第三字段 輸出行號(NR) 字段數(NF))

    如果只想查看sshd這個偽用戶的相關信息需要:cat /etc/passwd | awk 'BEGIN {FS=":"} $1=="sshd" {printf $1 "\t" $3 "\t" NR "\t" NF "\n"}'

    sshd ? 74 ??? 32 ??? 7

    (可以看到sshd偽用戶的UID是74,是/etc/passwd文件的第32行,共有7個字段)

    ?

    6.awk流程控制

    我們繼續用cj.txt文件做練習。首先看一下文件內容:

    【】# cat /root/cj.txt

    ID ??? Name ? ??? gender ??? ??? Mark

    1 ? ??? zhaosan ?? ??? M?? ??? ?? 87.12

    2 ? ??? lisi ? ??? ??? M ? ??? ??? 90.123

    3 ? ??? wangwu ??? ??? M ? ??? ??? 89.1233322

    假設想要統計本次成績的總分,那么我們應該:

    【】# awk 'NR==2{cj1=$4}

    > NR==3{cj2=$4}

    > NR==4{cj3=$4;totle=cj1+cj2+cj3;print "totle cj is" totle}' cj.txt

    totle cj is266.366

    接下來,演示如何實現流程控制,假設如果成績大于90,就是goodboy:

    【】# awk '{if (NR>=2) {if ($4>=90) print $2 " is a good boy \n"}}' cj.txt

    lisi is a good boy

    7.awk中調用腳本

    例:

    【】# cat pass.awk

    BEGIN {FS=":"}

    {print$1"\t"$3}

    【】# awk -f pass.awk /etc/passwd

    #用-f選項來調用這個腳

    本。

    root ? ??? 0

    bin ?? ??? 1

    daemon ??? 2

    (此腳本可以用于/etc/passwd、/etc/shadow、/etc/group等以:為分隔符文件的查看)

    、.sed命令 文件內增,刪,替換

    ????????sed主要是用來將數據進行選取,替換,刪除,新增的命令。sed通過一次僅讀取一行內容來對某些指令進行處理后輸出。首先sed通過文件或管道讀取文件內容,但sed默認并不輸出直接修改源文件,而是將讀入的內容復制到緩沖區域中,稱之為模式空間。

    其語法如下:sed?? [選項] ‘[動作]’ 文件名

    選項:

    -n???? 一般sed命令會把所有數據都輸出到屏幕,如果加入此選項,則只會把經過sed命令處理的行輸出到屏幕。

    -e?? 允許對輸入數據應用多條sed命令編輯。

    -f?? 腳本文件名? 從sed腳本中讀入sed操作。和awk命令的-f非常相似。

    -r??? 在sed中支持擴展正則表達式。

    -i??? 用sed的修改結果直接修改讀取數據的文件,而不是由屏幕輸出動作。

    a???? 追加,在當前行后添加一行或多行。添加多行時,除最后一行外,每行末尾需要用\代表數據未完結。

    c???? 行替換,用c后面的字符串替換原數據行。替換多行時,除

    最后一行外,每行末尾需要用\代表數據未完結。

    i???? 插入,在當前行前插入一行或多行。插入多行時,除最后一

    行外,每行末尾需要用\代表數據為完結。

    d???? 刪除,刪除指定的行。

    p???? 打印,輸出指定的行。

    s???? 字符串替換,用一個字符串替換另外一個字符串。格式

    為“行范圍s/舊字串/新字串/g”(和vim中替換格式類似)

    例:

    行數據操作:

    【】# sed '2p' cj.txt

    ID ??? Name ? ??? gender ??? ??? Mark

    1 ? ??? zhaosan ?? M ? ??? ??? ??? 87.12

    1 ? ??? zhaosan??? M ? ??? ??? ??? 87.12

    2 ? ??? lisi ? ??? M ? ??? ??? ??? 90.123

    3 ? ??? wangwu ??? M ? ??? ??? ??? 89.1233322

    (查看cj.txt文件中第二行。p選項的確輸出了第二行數據,但是sed命令還是會把所有數據都輸出一次,這時就會顯示為上邊的效果。如果想要指定輸出某行數據,就需要添加-n選項了。)

    【】# sed -n '2p' cj.txt

    1 ? ??? zhaosan M ??? 87.12

    (添加-n選項,只輸出了cj.txt中的第二行。)

    如何刪除文件中數據?[root@localhost ~]# sed '1,3d' cj.txt

    #刪除第一行到第三行的數據。

    3 ? ??? wangwu M ??? 89.1233322

    【】# cat cj.txt

    #但是文件本身并沒有進行

    刪除。

    ID ??? Name ? ??? gender ??? ??? Mark

    1 ? ??? zhaosan??? M ? ??? ??? ??? 87.12

    2 ? ??? lisi?? ??? M ? ??? ??? ??? 90.123

    3 ? ??? wangwu ??? M ? ??? ??? ??? 89.1233322

    如何在文件中追加數據?

    【】# sed '4a hello' cj.txt

    #在第四行后加入hello。

    ID ??? Name ? ??? gender ??? ??? Mark

    1 ? ??? zhaosan??? M ? ??? ??? ??? 87.12

    2 ? ??? lisi ? ??? M ? ??? ??? ??? 90.123

    3 ? ??? wangwu ??? M ? ??? ??? ??? 89.1233322

    hello

    (“a”會在指定行后面追加數據,如果想要在指定行前面插入數據,則需要使用“i”。)

    【】# sed '2i hello \

    > world' cj.txt

    ID ??? Name ? ??? gender ??? ??? Mark

    hello

    world

    #在第二行前面插入兩行數

    據。

    1 ? ??? zhaosan??? M ? ??? ??? ??? 87.12

    2 ? ??? lisi ? ??? M ? ??? ??? ??? 90.123

    3 ? ??? wangwu ??? M ? ??? ??? ??? 89.1233322

    (如果是想追加或插入多行數據,除最后一行外,每行的末尾都要加入“\”代表數據未完結。)

    【】# sed -n '2i hello \

    world' cj.txt

    hello

    world

    (還可以加入-n選項,只查看sed命令的操作)

    數據替換:假設lisi成績太好了,想要把他的成績進行替換:

    【】# cat cj.txt | sed '3c No such preson'ID

    1 ? ??? zhaosan??? M ? ??? ??? ??? 87.12

    2 ? ??? lisi ? ??? M ? ??? ??? ??? 90.123

    NO such preson

    3 ? ??? wangwu ??? M ? ??? ??? ??? 89.1233322

    sed命令默認情況是不修改文件內容的,在確定要讓sed命令直接處理文件的內容的情況下,可以使用-i選項。

    例:

    【】# sed -i '3c No such preson' cj.txt

    【】# cat cj.txt

    1

    zhaosan M 1 ? ??? zhaosan??? M ? 87.12

    2 ? ??? lisi ? ??? M ? ??? ??? ??? 90.123

    No such preson

    3 ? ??? wangwu ??? M ? ??? ??? ??? 89.1233322

    字符串替換:

    “c”動作是進行整行替換的,如果僅僅想替換行中的部分數據,就要使用“s”動作了。

    s動作的格式是:sed ‘s/舊字串/新字串/g’ 文件名

    比如:

    sed '5s/lod/new/2' ./test.txt

    #表示替換第五行中出現的第二個old為new。

    例如將wangwu的分數進行替換:

    [root@localhost ~]# sed '4s/89.1233322/90/g' cj.txt

    #在第四行中,把

    89...換成90。

    ID

    1 ? ??? zhaosan??? M ? ??? ??? ??? 87.12

    2 ? ??? lisi ? ??? M ? ??? ??? ??? 90.123

    3 ? ??? wangwu ??? M ? ??? ??? ??? 90

    (如果要修改的字符串是唯一的,那么可以不指定行號。但如果一個文件中存在多個相同字符的時候,不執行行號,就會替換所有舊字符為新字符。)

    加入g是表示所有"舊字符串"替換成"新字符串"。如果不加入g那么會替換每行第一個查找到的"舊字符串",也就是說如果一行內出現多個"舊字符串"只替換第一個,其余不替換。g可以用數字代替表示替換某行內找到的第幾個"舊字符串"。

    比如:

    sed '5s/lod/new/2' ./test.txt

    #表示替換第五行中出現的第二個old為new。

    【】# cat test.txt

    hello world hello world

    hello world hello worldhello world hello world

    【】# sed '1s/world/linux/2' test.txt

    hello world hello linux

    hello world hello world

    hello world hello world

    替換擴展:

    【】# sed '/SELINUX/ s/enforcing/xxx/g' /etc/selinux/config

    #替換指定文件中含有SELINUX行中的enforcing字符串為xxx。

    【】# sed '/SELINUX/ !s/enforcing/xxx/g' /etc/selinux/config

    #替換指定文件中所有enforcing為xxx但是不包括含有SELINUX的行。

    【】# sed '/root/,/swap/ s/xfs/ext4/g' /etc/fstab

    #從含有root的行開始到含有swap的字符串結束。匹配結果中帶有xfs的字符串全部替換成ext4。使用行內字符串確定替換字符串的范圍。

    如果想要將zhaosan成績注釋,可以進行如下操作:

    【】# sed '2s/^/#/g' cj.txt

    #1 ??? zhaosan??? M ? ??? ??? ??? 87.12

    2 ? ??? lisi ? ??? M ? ??? ??? ??? 90.123

    3 ? ??? wangwu ??? M ? ??? ??? ??? 89.1233322

    (這里使用正則表達式^代表行首。)

    指定范圍加注釋:

    【】# sed '1,3s/^/#/g' cj.txt

    #ID ?? Name ? ??? gender ??? ??? Mark

    #1 ??? zhaosan??? M ? ??? ??? ??? 87.12

    #2 ??? lisi ? ??? M ? ??? ??? ??? 90.123

    #3 ??? wangwu ??? M ? ??? ??? ??? 89.1233322

    (指定范圍1-3行加#注釋。)

    因為在sed中只能指定范圍,所以如果想要把zhaosan、wangwu注釋的話。只能:

    【】# sed -e 's/zhaosan//g ; s/wangwu//g' cj.txt

    ID? ?? Name ? ??? gender ??? ??? Mark

    1 ? ??? ??? ??? ??? M ? ??? ??? ??? 87.12

    2 ? ??? lisi ? ??? M ? ??? ??? ??? 90.123

    3 ? ??? ??? ??? ??? M ? ??? ??? ??? 89.1233322

    -e選項可以同時執行多個sed動作,當然如果只執行一個動作也是可以使用-e選項的,但沒什么意義。還要注意,多個動作之間要用;或回車分割。

    例如還可以這么寫:

    【】# sed -e 's/zhaosan//g

    > s/wangwu//g' cj.txt

    ID ??? Name ? ??? gender ??? ??? Mark

    1 ? ??? ??? ??? ??? M ? ??? ??? ??? 87.12

    2 ? ??? lisi ? ??? M ? ??? ??? ??? 90.123

    3 ? ??? ??? ??? ??? M ? ??? ??? ??? 89.1233322

    (回車后不能進行tab補全......)

    總結

    以上是生活随笔為你收集整理的shell基础--正则表达式行列提取的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。

    99热手机在线 | 国产综合精品一区二区三区 | 成人在线视频你懂的 | 久久久官网 | 亚洲一区二区三区毛片 | 中文字幕在线观看1 | 日本h视频在线观看 | 欧美日韩国产综合一区二区 | 97色婷婷成人综合在线观看 | 精品久久久久久久久中文字幕 | 五月激情丁香图片 | 久久久久国产精品午夜一区 | 99热手机在线 | 在线观看中文字幕视频 | 99re6热在线精品视频 | 免费看黄电影 | 九九热中文字幕 | 婷婷综合伊人 | 国产精品美女久久久久久久 | 精品极品在线 | 伊人手机在线 | 国产精品ssss在线亚洲 | 国产91av视频在线观看 | 亚洲精品理论 | 91热这里只有精品 | 麻豆国产精品一区二区三区 | 六月婷婷色 | 69视频永久免费观看 | 91精品国产福利在线观看 | 日韩中文字幕国产精品 | 久久一区二区三区四区 | 国产一区二区免费 | av 一区 二区 久久 | 天天看天天干 | 日本三级吹潮在线 | av在线激情 | 欧美成人理伦片 | 超碰97.com| 精品麻豆入口免费 | 69国产盗摄一区二区三区五区 | 综合激情网| 99久久99精品| 久草免费福利在线观看 | 91福利视频免费观看 | 国产精品乱码一区二三区 | 国产淫片免费看 | 国产99久久99热这里精品5 | 99久热在线精品视频成人一区 | 天堂在线免费视频 | 久草在线免费资源 | 久久免费毛片视频 | 最新午夜电影 | 日本 在线 视频 中文 有码 | 91亚洲精品久久久蜜桃 | 国产一级一片免费播放放a 一区二区三区国产欧美 | 久草久草久草久草 | 天天干夜夜想 | 韩国三级av在线 | 国产成人av一区二区三区在线观看 | 97国产一区二区 | 欧美热久久 | 国产亚洲小视频 | 国产原创在线观看 | 精品久久久99 | 久久字幕网 | 午夜在线观看影院 | 丁香婷五月 | 国产超碰在线观看 | 天无日天天操天天干 | 综合中文字幕 | 日韩有码在线观看视频 | 五月激情久久久 | 久久伊99综合婷婷久久伊 | 天天干天天爽 | 免费在线黄色av | 在线免费黄网站 | 久久99久久99精品免视看婷婷 | 国产色区 | 午夜精品电影一区二区在线 | 天天曰夜夜操 | 最新国产在线 | 国产精品免费人成网站 | 视频高清| 在线观看日韩专区 | www麻豆视频 | 激情五月婷婷 | 99国产精品久久久久老师 | 成人av影视 | 亚洲国产资源 | 在线观看小视频 | 国产高清无线码2021 | 亚洲黄网站| 久久无码精品一区二区三区 | 久色婷婷 | 999亚洲国产996395 | 97在线影院| 亚洲天堂毛片 | 国产精品综合久久久久久 | 国产片免费在线观看视频 | 免费日韩三级 | 久久中文字幕导航 | 激情久久综合网 | 成 人 黄 色 视频 免费观看 | 草久热 | 久久一区91 | 国产一级视屏 | 黄色成人av | 成人在线一区二区三区 | 天天色天天骑天天射 | 成人午夜剧场在线观看 | 久久99热精品这里久久精品 | 香蕉视频在线免费 | 1024在线看片| 丁香花中文在线免费观看 | 国产成人专区 | 日本高清免费中文字幕 | 国产亚州精品视频 | 久久在线精品视频 | 久久av高清 | 欧美午夜性生活 | 日日夜夜天天久久 | 久久视频国产精品免费视频在线 | 99九九99九九九视频精品 | 国产精品毛片一区二区在线看 | 国产最新视频在线观看 | 成人a级网站 | 久久免费观看少妇a级毛片 久久久久成人免费 | 成人国产精品一区 | 亚洲国产高清视频 | 久草电影在线观看 | 在线观看日韩专区 | www.狠狠色.com | 91成人欧美| 欧美黄色高清 | 日本精品中文字幕 | 五月婷婷,六月丁香 | 亚洲中字幕 | 粉嫩av一区二区三区四区五区 | 国产天天综合 | 亚洲人成人在线 | 国产精品观看在线亚洲人成网 | 久久精品精品电影网 | 亚洲精品视频免费在线观看 | 操操操影院 | 亚洲欧美成aⅴ人在线观看 四虎在线观看 | .国产精品成人自产拍在线观看6 | 在线免费av观看 | 天天射天天射天天 | 国产精品久久麻豆 | 日韩免费电影一区二区三区 | 在线观看视频国产一区 | 97国产视频 | 9热精品| av中文字幕网址 | av黄在线播放| 午夜美女视频 | 在线观看91网站 | 久草在线资源免费 | av免费在线网站 | 久久久久久久久久福利 | 免费性网站 | 日日爽天天操 | 韩国精品在线观看 | 免费在线看成人av | 免费观看成人av | 中文字幕在线观看2018 | 国产亚洲精品久久久久久网站 | 四虎永久免费在线观看 | 国产精品av久久久久久无 | 91精品视频观看 | 日本最新一区二区三区 | 日韩av中文 | 色狠狠综合天天综合综合 | 欧洲精品亚洲精品 | 99久久婷婷国产综合亚洲 | 中文字幕在线免费97 | 色操插| 日韩免费一区二区 | 亚洲理论片 | 97天堂 | 最新av网址在线 | 国产精品mm| 成人久久综合 | 在线中文字幕播放 | 狠狠色狠狠色综合日日92 | 久久网页 | 亚洲精品女人久久久 | 国产精品区免费视频 | 91麻豆精品国产91久久久久久久久 | 午夜.dj高清免费观看视频 | 欧美精品久久久久久久亚洲调教 | 欧美日韩国产精品爽爽 | 午夜视频一区二区三区 | 亚洲欧洲国产视频 | 超碰在线官网 | 色狠狠综合 | 91自拍成人| 在线观看午夜 | 免费在线激情电影 | 视频在线国产 | 麻豆传媒视频在线播放 | 日韩精品视频免费在线观看 | 成人网在线免费视频 | 国产视频欧美视频 | 国产在线自 | 欧美成人黄色 | 日韩| 99精品视频99 | 91亚洲精品久久久蜜桃 | 99精品视频网站 | 免费在线电影网址大全 | av黄色在线| 亚洲精品中文在线资源 | 久久色中文字幕 | 成人黄色小说在线观看 | 国色综合 | 精品国产伦一区二区三区免费 | 久久久久久久国产精品影院 | 最近高清中文字幕 | 色网站国产精品 | 青青草国产精品视频 | 成人av影视在线 | 久久tv视频 | 在线免费观看视频你懂的 | 国产精品久久久久一区 | 久久久精品高清 | 久久国产成人午夜av影院潦草 | 91系列在线 | 美女视频网站久久 | 国产午夜免费视频 | 色噜噜在线观看 | 欧美在线观看视频一区二区 | 成年人看片 | 国产免费一区二区三区网站免费 | 中文字幕在线国产精品 | 日韩一区二区三区免费视频 | 欧美日韩国产精品爽爽 | 在线观看亚洲国产精品 | 国产精品久久麻豆 | 91精品1区| 日韩在线视频在线观看 | 在线视频成人 | 亚洲欧美在线观看视频 | 精品国产亚洲一区二区麻豆 | 999久久久久久久久6666 | 四虎国产免费 | 免费看久久久 | 91精品国产九九九久久久亚洲 | 欧美日韩中文在线视频 | 国产伦精品一区二区三区在线 | 国产黄av| 日韩在线字幕 | 欧美日韩免费观看一区二区三区 | 日韩免费在线观看网站 | 国产精品原创视频 | 麻豆av一区二区三区在线观看 | aaa日本高清在线播放免费观看 | 成人av免费看 | 天天射综合网站 | 日批网站免费观看 | 日韩极品视频在线观看 | 日韩av在线高清 | 中文永久字幕 | 久久爱综合 | 久久久电影 | 91免费在线| 免费在线观看av | 国产精品都在这里 | 久久久国内精品 | av在线永久免费观看 | 国产在线观看不卡 | 亚洲色图22p | 国产亚洲资源 | 成人性生交视频 | 欧美日韩在线精品 | 99久久精品无码一区二区毛片 | 激情久久伊人 | 在线综合色 | 日韩欧美一区二区三区视频 | 激情婷婷色 | 337p日本大胆噜噜噜噜 | 99久久99久久综合 | 色偷偷88888欧美精品久久久 | 91精品国产乱码久久 | 在线国产视频 | 91亚瑟视频 | 日韩三级视频 | 99热这里只有精品8 久久综合毛片 | 热久久这里只有精品 | 最近最新最好看中文视频 | 91精品国产自产在线观看 | 欧美伦理一区二区 | 六月激情| 园产精品久久久久久久7电影 | 人人看人人爱 | 国产又黄又爽无遮挡 | 久草99| 成人av影视观看 | 国产视频综合在线 | 国产成人无码AⅤ片在线观 日韩av不卡在线 | 天堂在线一区二区 | 中文字幕在线影院 | 日韩大片免费在线观看 | 午夜视频在线瓜伦 | 成人午夜电影网 | 国产欧美精品一区aⅴ影院 99视频国产精品免费观看 | av黄网站| 超碰97国产| 懂色av一区二区在线播放 | 九九久久视频 | 亚洲欧洲一级 | 国产成人精品午夜在线播放 | 天天操人| 国产福利在线免费观看 | 在线看黄色av| 久久av一区二区三区亚洲 | 日韩在线 | www.夜夜干.com| 精品久久一 | 国产精品第一页在线观看 | 婷婷综合电影 | 人人干干人人 | 国产一区自拍视频 | 久久国产精品久久精品国产演员表 | 国产精品毛片一区二区三区 | 国产麻豆精品免费视频 | 亚洲国产日本 | 高清免费在线视频 | 国产日韩精品久久 | 不卡电影免费在线播放一区 | 最新国产在线 | 五月开心六月伊人色婷婷 | 午夜久久电影网 | 九九久久在线看 | 久久免费av电影 | 香蕉网址 | 国产精品videoxxxx | 正在播放国产精品 | 国内久久久久久 | 99九九99九九九视频精品 | 精选久久 | 九九亚洲精品 | 欧美另类性 | 亚洲精品玖玖玖av在线看 | 国产亚洲免费的视频看 | 欧美日韩中文国产 | 亚洲色图激情文学 | 国产精品久久久久av | 国产精品第二页 | 欧美亚洲久久 | 久久黄色免费视频 | 98福利在线| 亚洲高清不卡av | 久久天天躁狠狠躁夜夜不卡公司 | 天堂av色婷婷一区二区三区 | 国产黄影院色大全免费 | 国产精品不卡在线播放 | 国产高清一区二区 | 久久久综合九色合综国产精品 | 九九九九精品 | 在线成人高清电影 | 国产成人精品综合久久久 | 久久电影网站中文字幕 | 人人干人人超 | 超碰在线官网 | 91丨九色丨高潮 | 日本黄区免费视频观看 | 国产成a人亚洲精v品在线观看 | 成人国产电影在线观看 | 日韩免费观看一区二区 | 丁香婷婷在线观看 | 国产98色在线 | 日韩 | 欧美日韩视频网站 | 国产亚洲视频系列 | 久草在线视频中文 | 天天亚洲| 96精品高清视频在线观看软件特色 | 欧美精品在线视频 | 精品国产乱码久久久久久1区2匹 | 午夜精品一区二区三区免费视频 | 亚洲精品999 | 最近免费中文字幕 | 久久精品影视 | 91色欧美 | 国产 在线 日韩 | 日韩三级中文字幕 | 国产色网 | 91在线入口 | 99久久精品日本一区二区免费 | 四虎在线免费观看 | 欧美一级免费高清 | 国产精品一区二区av麻豆 | 亚洲国产精品成人综合 | 97av影院| 国产精品久久久久久久久久 | 美女久久 | 亚洲成aⅴ人在线观看 | 国产亚洲精品久久久久久网站 | 午夜视频一区二区 | 国产精品手机播放 | 欧美精品久久人人躁人人爽 | 五月婷婷在线视频观看 | 日日夜夜添 | 久草精品视频 | 欧美日韩精品久久久 | 日日摸日日添夜夜爽97 | 免费三级网 | 99久久激情视频 | 精品国产一区二区三区久久久 | 99精品热视频 | 久久久久久久久福利 | 亚洲精品在 | 男女免费av | av综合av| 国产又粗又猛又色又黄视频 | 91麻豆产精品久久久久久 | 国产麻豆剧果冻传媒视频播放量 | 九九久久久久久久久激情 | 手机看片国产 | 日韩一区二区三区免费电影 | 日韩中文字幕91 | 天海翼一区二区三区免费 | 91福利区一区二区三区 | 9999免费视频 | 99精品视频在线观看 | 在线观看免费 | 精品国产乱码久久久久久久 | 精品久久久久久久久久久久久久久久久久 | 国产高清视频免费最新在线 | 久草精品视频在线播放 | 友田真希av| 精品1区2区3区 | 日日操日日插 | 激情综合网天天干 | 五月开心婷婷 | 91成人网在线观看 | 欧洲精品久久久久毛片完整版 | 亚洲成a人片在线观看中文 中文字幕在线视频第一页 狠狠色丁香婷婷综合 | 久久夜夜夜 | 999久久久免费精品国产 | 日韩三区在线 | 精品1区2区| 最近在线中文字幕 | 99久久夜色精品国产亚洲96 | 亚洲精品xxxx | av高清不卡 | 精品专区| 欧美日韩不卡在线 | 99久久99久久精品免费 | 福利精品在线 | 欧美一级电影在线观看 | 午夜影院先| 久久99视频精品 | 精品久久久久久电影 | 免费观看成年人视频 | 国产黄大片在线观看 | 视频国产一区二区三区 | 日本精品视频一区二区 | 精品一区二区日韩 | 亚洲精品午夜久久久久久久久久久 | 夜夜夜夜猛噜噜噜噜噜初音未来 | 成人av播放 | 激情五月视频 | 综合久久综合久久 | 免费网站污| 国产精品扒开做爽爽的视频 | 色婷婷狠狠五月综合天色拍 | av福利在线 | 精品网站999www | 精品国产一区在线观看 | 日韩av成人在线观看 | 国产98色在线 | 日韩 | 色婷婷免费视频 | 国产一区免费视频 | 国产精品欧美久久久久三级 | 国产精品少妇 | 91av手机在线| 精品一区二区在线免费观看 | 西西444www大胆无视频 | 黄色网址国产 | www.夜夜骑.com| 国产不卡精品 | 久久午夜网| 久久久久久电影 | 成人国产精品久久久春色 | 免费福利视频网站 | 久久久久麻豆 | 中文字幕免费 | 9幺看片 | 五月激情电影 | 亚洲无吗天堂 | 久久电影国产免费久久电影 | 人人爽人人射 | 丁香婷婷基地 | 成年人在线免费看片 | 免费观看丰满少妇做爰 | 九九热1| 99久久综合狠狠综合久久 | 99热在线网站 | 又污又黄网站 | 日韩av电影中文字幕在线观看 | 成人免费91| 国产成人在线一区 | 国产精品久久99综合免费观看尤物 | 午夜精品视频一区二区三区在线看 | 一区二区三区免费看 | 99国产精品视频免费观看一公开 | 久久久96| 99精品视频网站 | 成人国产精品免费观看 | 91一区二区三区在线观看 | 黄色三级在线 | 激情综合五月网 | 在线va视频 | 久久成人麻豆午夜电影 | 亚洲精品国偷拍自产在线观看蜜桃 | 婷婷播播网| 狠狠狠色丁香婷婷综合久久五月 | 果冻av在线| 久久亚洲国产精品 | 丁香激情综合 | 国产黄色片网站 | 成人黄色电影在线观看 | 亚洲国产精品va在线看黑人动漫 | 亚洲国产成人精品在线观看 | 91麻豆精品国产午夜天堂 | 精品免费一区二区三区 | 99热这里只有精品国产首页 | 国产亚洲精品成人av久久ww | 日韩一片| 夜夜躁日日躁 | 国产日韩精品久久 | 亚洲午夜精品一区二区三区电影院 | 亚洲欧美日本A∨在线观看 青青河边草观看完整版高清 | 精品一区 在线 | 日韩免费观看一区二区 | 欧美日韩另类在线 | 日操操 | 三级黄色免费片 | 国产三级av在线 | 久久99影院| 青青河边草观看完整版高清 | 久久99日韩| 日本午夜在线观看 | 最新av网站在线观看 | 精品亚洲午夜久久久久91 | 亚洲午夜久久久久久久久电影网 | 日韩av一区二区在线 | 四虎成人在线 | 在线观看91网站 | 激情网色 | 国产午夜精品一区二区三区在线观看 | 激情久久久久久久久久久久久久久久 | 精品人人人 | 99riav1国产精品视频 | 国内少妇自拍视频一区 | 国产精品美女久久久久久2018 | 久久系列 | 综合久久网站 | 99视频精品全部免费 在线 | 丁香婷婷深情五月亚洲 | 香蕉一区| 五月婷婷六月丁香 | 亚洲精品久久久久中文字幕m男 | 日韩电影在线视频 | 九九久久免费 | 欧美色一色 | 亚洲久草网 | 999久久a精品合区久久久 | 精品福利视频在线 | 国产免费视频一区二区裸体 | 久久精品视频99 | 国产午夜精品一区二区三区四区 | 中日韩三级视频 | 成人黄色小视频 | 欧美日韩亚洲在线观看 | 日日弄天天弄美女bbbb | 亚洲国产午夜视频 | 中文字幕一二三区 | 成人av电影在线观看 | 黄色91在线 | 国产日女人 | 亚洲天堂va| 久久午夜电影网 | 国产精品永久久久久久久www | 色狠狠操| 99久久99久久综合 | 久久精品波多野结衣 | 欧美 亚洲 另类 激情 另类 | 午夜视频二区 | 成人午夜网 | 婷婷丁香av| 国产丝袜在线 | 久久精品一区二区三区视频 | 国产探花在线看 | 伊人婷婷色| 97品白浆高清久久久久久 | 国产精品久久久久久高潮 | 亚洲免费资源 | 久久久影院官网 | 四虎4hu永久免费 | 欧美亚洲国产精品久久高清浪潮 | 国产黄色一级大片 | 亚洲精品97| 久草视频资源 | 国产精品午夜在线 | 91高清在线 | 男女激情片在线观看 | 人人艹视频 | 月下香电影| 国产福利在线不卡 | 色偷偷97| 九九热精品视频在线观看 | 日韩精品视频免费看 | 丁香花中文在线免费观看 | 欧美成人区 | 1024手机基地在线观看 | 深夜福利视频一区二区 | 天天色天天综合 | 成人动漫一区二区三区 | 国产一区二区免费在线观看 | 国内精品久久久久影院男同志 | 国产在线播放一区二区 | 久久看片网| 青青色影院 | 成人羞羞视频在线观看免费 | 夜又临在线观看 | 久久成年视频 | 六月丁香婷婷在线 | 99久久免费看 | 成人黄色在线观看视频 | 亚洲在线免费视频 | 国产一区二区在线免费播放 | 天天操天天干天天 | 在线播放一区 | 国内精品视频久久 | 超碰在线97国产 | 国产精品18久久久久久久久久久久 | 久久中文网 | 亚洲精品黄色在线观看 | 亚洲国产精品推荐 | 天天摸天天操天天爽 | 欧美日韩在线视频观看 | 久操中文字幕在线观看 | 亚洲五月六月 | 国产人成在线视频 | 深爱激情五月婷婷 | 国产成人精品综合 | 色资源网在线观看 | 免费av网站在线看 | 新av在线 | 天天鲁一鲁摸一摸爽一爽 | 色婷婷九月 | 久草在线免 | 国偷自产中文字幕亚洲手机在线 | 久久曰视频| 九九视频这里只有精品 | 亚洲欧洲精品一区 | 最近高清中文字幕在线国语5 | 国产精品 中文字幕 亚洲 欧美 | 片网站 | 久久成人国产精品入口 | 日韩中文字幕视频在线观看 | 成人亚洲综合 | 香蕉网站在线观看 | 欧美久久久久久久久久久久 | 日韩va亚洲va欧美va久久 | 2024国产精品视频 | 黄色av成人在线观看 | 久久久午夜精品理论片中文字幕 | 日韩精品中字 | 欧美激情视频在线观看免费 | 日韩在线电影 | 91一区二区在线 | 日韩欧美99| 欧美视频日韩 | 久热精品国产 | 江苏妇搡bbbb搡bbbb | 亚洲国产精品推荐 | 91香蕉视频色版 | 在线观看av中文字幕 | 国产精品一区二区免费看 | 欧美一区影院 | 91色综合| 日韩高清不卡在线 | 超碰在线97国产 | 国产黄a三级 | 国产小视频免费在线观看 | 欧美日韩国产xxx | 亚洲2019精品 | 亚洲国产中文字幕 | 亚洲经典在线 | 久久精品一区二区三区四区 | 日韩中文字幕在线 | 亚洲黑丝少妇 | 国产中文字幕在线视频 | 欧美日韩国产一区二区在线观看 | 少妇啪啪av入口 | www国产在线| 亚洲综合色激情五月 | 久久只有精品 | www.亚洲| 不卡电影免费在线播放一区 | 久热只有精品 | 精品久久久久久国产偷窥 | 日韩免费一级a毛片在线播放一级 | 欧美日韩久 | 日韩精品极品视频 | 高清国产午夜精品久久久久久 | 中文字幕高清有码 | 国产一区二区三区免费在线 | 亚洲观看黄色网 | 三级av免费看 | 欧美aa级| 精品国产亚洲日本 | 久久精品国产99 | 国产精品一区二区三区久久久 | 亚洲永久精品在线观看 | 99在线精品视频在线观看 | 国产精品久久久久久久久久免费看 | 伊人黄 | 国产色视频一区 | 91超碰在线播放 | 国产小视频在线播放 | 国产日韩精品在线 | 久草久热 | 国产精品一区二区免费在线观看 | 在线视频欧美精品 | .国产精品成人自产拍在线观看6 | 日日摸日日添日日躁av | 久草在线视频网站 | 国内外成人免费在线视频 | 99色资源 | 成人手机在线视频 | 91在线视频免费播放 | 欧美成人xxxxx| 久久手机免费观看 | 人人天天夜夜 | 国产色网站 | 99在线观看视频 | 亚洲免费色| 99亚洲精品 | www日韩高清 | 在线视频手机国产 | 久久刺激视频 | 91视频电影| 日本精品久久久久影院 | 亚洲成人第一区 | 久久99九九99精品 | 亚洲欧美国内爽妇网 | 天天超碰 | 91av在线播放视频 | 天天躁天天躁天天躁婷 | 日韩欧美一区二区在线观看 | 精品久久一二三区 | 久草久热 | 99久久久久 | 美女天天操 | 在线视频精品播放 | 欧美日韩另类在线观看 | 97在线视频网站 | 中文在线最新版天堂 | 欧美另类xxxx | 国产一级片网站 | 一二三区在线 | 久久96国产精品久久99漫画 | 欧美日韩一区二区免费在线观看 | 国产精品大全 | 丁香影院在线 | 1024手机看片国产 | 99亚洲精品 | 激情久久久| 美女久久久久久 | 狠狠色狠狠综合久久 | av黄色免费在线观看 | 99久久毛片 | 天天操天天射天天爽 | 亚洲精品男人天堂 | 天天插伊人 | 国产日产精品久久久久快鸭 | av一区二区在线观看中文字幕 | 五月天综合网 | 激情综合电影网 | 在线视频观看亚洲 | av一区二区在线观看中文字幕 | 日韩久久电影 | 久久99精品久久久久久久久久久久 | 黄色三级免费网址 | 欧美成人理伦片 | 国产小视频你懂的 | 日韩免费在线观看 | 天天操综合网站 | 久久精品—区二区三区 | 成人在线观看网址 | 精品1区二区| 精品视频中文字幕 | 色婷婷综合视频在线观看 | av超碰免费在线 | 丁香婷婷激情 | 日韩黄色免费电影 | 9797在线看片亚洲精品 | 欧美 亚洲 另类 激情 另类 | 超碰在线天天 | 波多野结衣电影一区二区三区 | 国产精品久久艹 | 日韩免费二区 | 国产91免费在线观看 | 日本丰满少妇免费一区 | 亚洲精品久久久蜜桃 | 国内精品久久久精品电影院 | 狠狠干天天射 | 人人干人人超 | 久草电影在线观看 | 91成年人在线观看 | 精品国产美女 | 色综合激情网 | 免费久久久久久 | 这里有精品在线视频 | 五月婷香 | 久久久资源 | 国产96精品| 国产97在线观看 | 精品一区二区av | 超碰人人射| 九九久久精品 | av中文在线观看 | 黄色av网站在线观看 | 在线视频91 | 丝袜制服综合网 | 国产不卡精品 | 97人人模人人爽人人喊中文字 | 69精品在线 | 黄av资源 | 狠狠操夜夜 | 欧美日韩免费观看一区二区三区 | 日本午夜在线亚洲.国产 | 婷婷综合激情 | 免费在线国产 | 国产高清在线永久 | 亚洲国产欧美在线看片xxoo | 欧美日韩国产亚洲乱码字幕 | 亚州国产视频 | 久久夜色电影 | 婷婷丁香久久五月婷婷 | 久久手机视频 | 午夜精品视频免费在线观看 | 99精品免费视频 | 欧美日韩国产伦理 | 九九在线高清精品视频 | 久久全国免费视频 | 免费看wwwwwwwwwww的视频 久久久久久99精品 91中文字幕视频 | 美女网站免费福利视频 | 国产精品午夜8888 | 国产精品久久三 | 日韩免费观看av | 亚洲精品黄色在线观看 | 天天爱天天操天天爽 | 色国产在线 | 91mv.cool在线观看 | 国产精品99久久久久久久久久久久 | 日本性久久| 中文字幕中文字幕中文字幕 | 亚洲狠狠丁香婷婷综合久久久 | 欧美久久久久久久久久久 | 久久视频一区二区 | 国产精品国产三级国产不产一地 | 欧美日韩国产成人 | 日韩午夜电影 | 色黄视频免费观看 | 日韩成人精品 | 国产一区二区三区 在线 | 在线观看岛国片 | 在线观看福利网站 | 色88久久 | 欧美日韩伦理一区 | 国产麻豆剧果冻传媒视频播放量 | 日本中文在线播放 | 天天干天天干天天操 | 欧美一级免费高清 | 91探花在线视频 | 日韩性色 | 91黄色成人 | 99视频导航 | 国产精品手机在线播放 | 国产亚洲精品久久久久久网站 | 中文字幕在线观看视频一区二区三区 | 日韩免费在线观看视频 | 91精品久久久久久久91蜜桃 | 青春草国产视频 | av片一区 | 最新免费av在线 | 中文字幕在线播放一区二区 | 这里只有精彩视频 | 三级黄色免费 | 久久久99精品免费观看乱色 | 97精品国产97久久久久久春色 | 欧美日韩国产网站 | 久久久久久免费视频 | 国产精品av免费在线观看 | 婷婷丁香六月天 | 成人欧美日韩国产 | 91麻豆精品国产自产在线 | 在线播放亚洲 | 成人国产在线 | 中文字幕日本特黄aa毛片 | 伊甸园永久入口www 99热 精品在线 | 日韩成人黄色 | 日本黄色免费电影网站 | 国产青青青 | 中文字幕亚洲五码 | 久久伊人精品一区二区三区 | 少妇激情久久 | 亚洲欧美怡红院 | 婷婷亚洲激情 | 欧美成人区 | 中文字幕中文中文字幕 | 亚洲视频每日更新 | 国产高清免费观看 | 91精品国产欧美一区二区 | 久久久久成人精品亚洲国产 | 96在线 | 91av在线视频免费观看 | 久久综合偷偷噜噜噜色 | 天天摸日日摸人人看 | 黄色网址在线播放 | 综合网av | 黄色aaaaa| 成人欧美一区二区三区在线观看 | 日韩欧美xx | 久久精品欧美一区二区三区麻豆 | 色五月色开心色婷婷色丁香 | 在线视频精品播放 | 国产视频在 | 99成人精品 | 日韩av一卡二卡三卡 | 亚洲日本一区二区在线 | 久久97视频| 三上悠亚一区二区在线观看 | 91国内在线 | 日韩美女黄色片 | 69国产精品视频 | 亚洲伦理电影在线 | av成人动漫 | 黄色中文字幕 | 国内精品久久久久久久影视麻豆 | 日韩高清在线看 | 香蕉网在线观看 | 成人性生交视频 | 成人免费观看电影 | 亚洲午夜电影网 | 亚洲欧美国产精品18p | 亚洲播播| 国产亚洲精品久久 | 免费观看v片在线观看 | 18av在线视频 | 在线免费黄色片 | 成人午夜电影在线观看 | 亚洲区色| 热久久国产精品 | 国产成人高清 | 91日韩精品一区 | 日韩狠狠操 | 综合在线色 | 欧美视频在线观看免费网址 | 亚洲激情av | 91最新网址在线观看 | 韩国一区二区三区在线观看 | 国产精品女人网站 | 碰超人人 | 久久96国产精品久久99软件 | 免费a级大片 | 三级性生活视频 | 四虎免费在线观看 | 亚洲精品美女久久久久网站 | 一区二区不卡 | 在线观看国产91 | 日韩精品欧美精品 | av电影免费在线看 | 黄色小视频在线观看免费 | 狠狠gao | 国产精品原创在线 | 在线视频观看成人 | 91精品啪在线观看国产 | 亚洲天堂网站 | 精品一区二区综合 | 9i看片成人免费看片 | 欧美日韩免费一区二区 | 狠狠成人 | 免费看一级特黄a大片 | 国产精品视频久久 | 国产一级片久久 | 综合av在线 | 国产高清一区二区 | 国产96av | 日本黄色一级电影 | 国产高清在线视频 | 成人免费大片黄在线播放 | 91在线精品一区二区 |