青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

專職C++

不能停止的腳步

  C++博客 :: 首頁 :: 聯(lián)系 :: 聚合  :: 管理
  163 Posts :: 7 Stories :: 135 Comments :: 0 Trackbacks

常用鏈接

留言簿(28)

我參與的團(tuán)隊(duì)

搜索

  •  

最新評(píng)論

閱讀排行榜

評(píng)論排行榜

原文:http://savs.hcc.edu.tw/~chuavv/bash/Bash-Beginners-Guide-SimplifiedChinese/index.html 
目錄

6.1. gawk上路

6.1.1. 什么是gawk?

6.1.2. Gawk命令

6.2. 打印程序

6.2.1. 打印選擇的域

6.2.2. 格式化域

6.2.3. print命令和正則表達(dá)式

6.2.4. 特殊的patterns

6.2.5. Gawk腳本

6.3. Gawk變量

6.3.1. 輸入域的分隔符

6.3.2. 輸出分隔符

6.3.3. 記錄的數(shù)量

6.3.4. 用戶定義的變量

6.3.5. 更多例子

6.3.6. printf程序

6.4. 總結(jié)

6.5. 練習(xí)

摘要

本章我們會(huì)討論:

  • 什么是 gawk?
  • 在命令行中使用 gawk 命令
  • 怎么使用 gawk 來格式化文本
  • gawk 怎么使用則正則表達(dá)式
  • 腳本中的 gawk
  • gawk 和變量

把它變得更有趣味

就像sed一樣,整本書寫了多個(gè)版本的awk。這個(gè)介紹遠(yuǎn)還不夠完整,且只是為了能夠理解在后面章節(jié)中的例子。要得到更多的信息,最好是從 GNU awk 的隨附文檔開始:“GAWK: Effective AWK Programming: A User's Guide for GNU Awk”.

6.1. gawk上路

6.1.1. 什么是gawk?

Gawk 是通常在UNIX系統(tǒng)下使用的另外一個(gè)流行的流編輯器 awk 的GNU版本。盡管 awk 程序常常只是一個(gè) gawk 的連接,但是我們還是稱作它為 awk。

awk 的最基本的作用是搜索含有1個(gè)或者多個(gè)模板的文件中的行或者其他文本塊。當(dāng)一行符合搜索的patterns,在該行就會(huì)實(shí)現(xiàn)指定的動(dòng)作。

在 awk 中的程序和許多其他語言中的程序是不一樣的,因?yàn)?nbsp;awk 程序是 “數(shù)據(jù)驅(qū)動(dòng)的” :你先描述你想處理的數(shù)據(jù),然后當(dāng)找到它們的時(shí)候怎么處理。許多其他的語言是“過程的”。你需要具體的描述程序該采取的措施。當(dāng)使用過程化的語言時(shí),通常更難清楚地描述你需要處理的數(shù)據(jù)。正因?yàn)槿绱耍?nbsp;awk 程序經(jīng)常能清爽容易地讀寫。

6.1.2. Gawk命令

當(dāng)你運(yùn)行 awk 的時(shí)候,你指定一個(gè) awk 程序 來通知 awk 該如何做。程序由一系列 規(guī)則 組成。(也可能包含函數(shù)定義,循環(huán),條件和其他程序結(jié)構(gòu),高級(jí)特性等一系列我們已經(jīng)遺忘的東西。)每個(gè)規(guī)則指定了搜索的模板和在搜索到一個(gè)模板后執(zhí)行的動(dòng)作。

有幾種運(yùn)行 awk 的方法。如果程序很短,最方便的是在命令行運(yùn)行它:

awk PROGRAM inputfile(s)

在已經(jīng)完成的多個(gè)改變,通常在多個(gè)文件,很方便把 awk 命令放到腳本當(dāng)中,讀起來像這樣:

awk -f PROGRAM-FILE inputfile(s)

 

源文檔 <http://savs.hcc.edu.tw/~chuavv/bash/Bash-Beginners-Guide-SimplifiedChinese/ch06.html>

6.2. 打印程序

6.2.1. 打印選擇的域

awk 中的 print 命令把輸入文件中選擇的數(shù)據(jù)輸出。

當(dāng) awk 讀取文件的一行,根據(jù)指定的 輸入域分隔符 把行分開, FS,awk 的一個(gè)環(huán)境變量(見 第 6.3.2 節(jié) “輸出分隔符”)。它被預(yù)先定義為一個(gè)或者多個(gè)空格或者制表符。

變量 $1, $2, $3, ..., $N 把輸入行的第一第二第三直到最后一個(gè)域保存起來。變量 $0 把整行的值保存起來。在下面的圖片描述中,我們看到 df 命令輸出有6欄。

圖 6.1. awk中的塊

在 ls -l 的輸出,有9欄。 print 語句像這樣使用這些域:

kelly@octarine ~/test> ls -l | awk '{ print $5 $9 }'
160orig
121script.sed
120temp_file
126test
120twolines
441txt2html.sh

kelly@octarine ~/test>

這個(gè)命令把包含文件大小的第五欄和包含文件名的最后一欄打印出來。除非你使用正式的方法來用一個(gè)逗號(hào)來分割你想打印的列,否則輸出并不十分適合閱讀。這樣的情況下,默認(rèn)的輸出分割字符,通常是一個(gè)空格,將被放入每個(gè)輸出域。

6.2.2. 格式化域

沒有格式化,只使用輸出分隔符的話看上去比較破,插入幾個(gè)制表符和指示輸出的標(biāo)記會(huì)使它變得漂亮很多:

kelly@octarine ~/test> ls -ldh * | grep -v total | \
awk
'{ print "Size is " $5 " bytes for " $9 }'
Size is 160 bytes for orig
Size is 121 bytes for script.sed
Size is 120 bytes for temp_file
Size is 126 bytes for test
Size is 120 bytes for twolines
Size is 441 bytes for txt2html.sh

kelly@octarine ~/test>

注意反斜杠的用法,讓shell不把它翻譯成分隔命令而使其在下一行繼續(xù)很長的輸入。雖然命令行的輸入實(shí)際上是沒有長度限制的,但是你的顯示器不是,打印的紙當(dāng)然也不是。使用反斜杠也允許拷貝和粘貼以上行到一個(gè)終端窗口。

ls 的 -h 選項(xiàng)用來支持把大文件的字節(jié)數(shù)轉(zhuǎn)換成更容易讀的格式。當(dāng)把目錄作為參數(shù)的時(shí)候長列表的輸出顯示目錄中快的總數(shù)。這行對(duì)我們并沒有什么用處,所以我們加上一個(gè)*。同樣的原因我們同樣加上 -d 選項(xiàng),萬一*對(duì)一個(gè)目錄展開。

在這個(gè)例子中的反斜杠提示了一行的延長。見 第 3.3.2 節(jié) “轉(zhuǎn)義字符”。

甚至在反序中你也能取出任何欄的的數(shù)字。下面的例子證明了最危險(xiǎn)的區(qū)分。

kelly@octarine ~> df -h | sort -rnk 5 | head -3 | \
awk
'{ print "Partition " $6 "\t: " $5 " full!" }'
Partition /var  : 86% full!
Partition /usr  : 85% full!
Partition /home : 70% full!

kelly@octarine ~>

下表給出了特殊格式化字符的總攬:

表 6.1. gawk的格式化字符

轉(zhuǎn)義字符

含義

\a

Bell character

\n

Newline character

\t

Tab

引用,$和其他元字符應(yīng)該使用反斜杠來進(jìn)行轉(zhuǎn)義。

6.2.3. print命令和正則表達(dá)式

用斜杠把正則表達(dá)式包含起來可以當(dāng)作一個(gè)pattern。然后正則表達(dá)式測(cè)試整個(gè)文本的每條記錄。語法如下:

awk 'EXPRESSION { PROGRAM }' file(s)

下面的例子現(xiàn)實(shí)了只有本地磁盤設(shè)備的信息,網(wǎng)絡(luò)文件系統(tǒng)沒有顯示:

kelly is in ~> df -h | awk '/dev\/hd/ { print $6 "\t: " $5 }'
/       : 46%
/boot   : 10%
/opt    : 84%
/usr    : 97%
/var    : 73%
/.vol1  : 8%

kelly is in ~>

斜杠也需要轉(zhuǎn)義,因?yàn)閷?duì)于 awk 它們有著特殊的含義。

下面的另外一個(gè)例子是我們?cè)?nbsp;/etc 目錄搜索以 “.conf” 結(jié)尾和 “a” 或者 “x” 開頭的文件,使用擴(kuò)展的正則表達(dá)式:

kelly is in /etc> ls -l | awk '/\<(a|x).*\.conf$/ { print $9 }'
amd.conf
antivir.conf
xcdroast.conf
xinetd.conf

kelly is in /etc>

這個(gè)例子說明了在正則表達(dá)式中.的特殊意義。第一個(gè)表明了我們想要搜索在第一個(gè)搜索字符串之后的任何字符,第二個(gè)因?yàn)槭且檎易址囊徊糠炙员晦D(zhuǎn)義了(文件名的結(jié)束)。

6.2.4. 特殊的patterns

為了在輸出之前加上注釋,使用BEGIN語句:

kelly is in /etc> ls -l | \
awk
'BEGIN { print "Files found:\n" } /\<[a|x].*\.conf$/ { print $9 }'
Files found:
amd.conf
antivir.conf
xcdroast.conf
xinetd.conf

kelly is in /etc>

加上 END 語句能插入文本在整個(gè)輸入被處理之后:

kelly is in /etc> ls -l | \
awk
'/\<[a|x].*\.conf$/ { print $9 } END { print \
"Can I do anything else for you, mistress?" }'

amd.conf
antivir.conf
xcdroast.conf
xinetd.conf
Can I do anything else for you, mistress?

kelly is in /etc>

6.2.5. Gawk腳本

由于往往命令都有點(diǎn)長,你可能想把他們放到腳本中,來重用它。一個(gè) awk 腳本包含定義pattern和動(dòng)作的awk語句。

作為一個(gè)說明,我們將建立一個(gè)報(bào)告來顯示占用率最高的分區(qū),參見 第 6.2.2 節(jié) “格式化域”

kelly is in ~> cat diskrep.awk
BEGIN { print "*** WARNING WARNING WARNING ***" }
/\<[8|9][0-9]%/ { print "Partition " $6 "\t: " $5 " full!" }
END { print "*** Give money for new disks URGENTLY! ***" }

kelly is in ~> df -h | awk -f diskrep.awk
*** WARNING WARNING WARNING ***
Partition /usr  : 97% full!
*** Give money for new disks URGENTLY! ***

kelly is in ~>

awk 先打印一個(gè)開始信息,然后格式化所有包含一個(gè)8或者9開頭的詞的行,然后后接一個(gè)數(shù)字和百分符號(hào),然后加入結(jié)束信息。

語法高亮

Awk是一個(gè)編程語言。他的語法能被大多數(shù)能對(duì)其他語言比如c,bash,HTML進(jìn)行語法高亮編輯器所識(shí)別。

 

源文檔 <http://savs.hcc.edu.tw/~chuavv/bash/Bash-Beginners-Guide-SimplifiedChinese/ch06s02.html>

 

6.3. Gawk變量

既然 awk 處理輸入文件,他使用幾個(gè)變量。一些是可以編輯的,一些是只讀的。

6.3.1. 輸入域的分隔符

域分隔符,既不是一個(gè)單獨(dú)的字符也不是一個(gè)普通的表達(dá)式,是控制 awk 把一個(gè)輸入分割成幾個(gè)域。輸入記錄按分割定義進(jìn)行字符順序掃描;域就是在相符的那些文字中間的那部分。

域分隔符代表內(nèi)建的變量 FS,注意POSIX標(biāo)準(zhǔn)的shell使用的變量 IFS 和他是有一些區(qū)別的。

域分隔符變量的值可以在 awk 程序中用賦值操作符 = 來改變。通常最好的執(zhí)行時(shí)間是一開始也就是還沒有處理任何輸入的時(shí)候,因此第一個(gè)記錄就被隨合適的分隔符一起讀取。要這么做,清使用特殊的 BEGIN pattern。

以下的例子,我們編制了一條命令來顯示系統(tǒng)里的所有用戶及其描述:

kelly is in ~> awk 'BEGIN { FS=":" } { print $1 "\t" $5 }' /etc/passwd
--output omitted--
kelly        Kelly Smith
franky        Franky B.
eddy        Eddy White
willy        William Black
cathy        Catherine the Great
sandy        Sandy Li Wong

kelly is in ~>

在一個(gè) awk 腳本中,它看起來像這樣:

kelly is in ~> cat printnames.awk
BEGIN { FS=":" }
{ print $1 "\t" $5 }

kelly is in ~> awk -f printnames.awk /etc/passwd
--output omitted--

小心地選擇輸入分隔域來防止出現(xiàn)問題。一個(gè)例子來說明這個(gè):說你需要輸入想這樣的行的形式:

“Sandy L. Wong, 64 Zoo St., Antwerp, 2000X”

你這樣寫了一個(gè)打印出記錄中人的名字的命令行或者是腳本:

awk 'BEGIN { FS="," } { print $1, $2, $3 }' inputfile

但是可能一個(gè)人有PhD,而且可能寫成這樣:

“Sandy L. Wong, PhD, 64 Zoo St., Antwerp, 2000X”

你的 awk 會(huì)給出錯(cuò)誤的輸出。需要的話,使用額外的一個(gè) awk 或者 sed 來統(tǒng)一數(shù)據(jù)輸出的格式。

默認(rèn)的輸入分隔符是一個(gè)或多個(gè)空格和制表符。

6.3.2. 輸出分隔符

6.3.2.1. 輸出域分隔符

在輸出中域通常被空格分隔。當(dāng)你對(duì) print 命令使用正確的語法且字段用逗號(hào)分隔時(shí),這將很明顯的:

kelly@octarine ~/test> cat test
record1         data1
record2         data2

kelly@octarine ~/test> awk '{ print $1 $2}' test
record1data1
record2data2

kelly@octarine ~/test> awk '{ print $1, $2}' test
record1 data1
record2 data2

kelly@octarine ~/test>

如果你不輸入逗號(hào), print 將把輸出的項(xiàng)目全部當(dāng)成一個(gè)字段,因此省略默認(rèn)輸出 分隔符, OFS的使用。

在攝制了這個(gè)內(nèi)建變量的值之后任何字符串可以被用作一個(gè)輸出域。

6.3.2.2. 輸出記錄分隔符

整個(gè) print 語句的輸出叫做輸出記錄。每個(gè)在輸出記錄里的print命令的結(jié)果,輸出一個(gè)叫做 輸出記錄分隔符 ORS的字符串。這個(gè)變量的默認(rèn)值是 “\n”,一個(gè)換行符。因此,每個(gè) print 語句生成一個(gè)單獨(dú)的行。

要改變輸出域和記錄的,只要給 OFS 和 ORS 賦新的值:

kelly@octarine ~/test> awk 'BEGIN { OFS=";" ; ORS="\n-->\n" } \
{ print $1,$2}'
test
record1;data1
-->
record2;data2
-->

kelly@octarine ~/test>

如果 ORS 的值不包含換行,那么程序中的輸出就會(huì)輸出成一個(gè)單獨(dú)行。

6.3.3. 記錄的數(shù)量

內(nèi)建的 NR 包含了處理過的記錄的數(shù)量。在讀入一個(gè)新的輸入行之后他會(huì)自行增加一次。你可以用它來計(jì)算記錄的總數(shù),或者在每個(gè)輸出記錄中:

kelly@octarine ~/test> cat processed.awk
BEGIN { OFS="-" ; ORS="\n--> done\n" }
{ print "Record number " NR ":\t" $1,$2 }
END { print "Number of records processed: " NR }

kelly@octarine ~/test> awk -f processed.awk test
Record number 1:        record1-data1
--> done
Record number 2:        record2-data2
--> done
Number of records processed: 2
--> done

kelly@octarine ~/test>

6.3.4. 用戶定義的變量

除了內(nèi)建的變量之外,你也可以定義自己的變量。當(dāng) awk 碰到一個(gè)不存在的變量(沒有事先定義的)的引用時(shí),這個(gè)變量就被創(chuàng)建并且使用一個(gè)空字符串進(jìn)行賦值。對(duì)于后來所有的引用,就是該變量最后被賦予的那個(gè)值。變量可以是一個(gè)字符串或者一個(gè)數(shù)字。輸入域的內(nèi)容也可以被賦予變量。

值可以直接用 = 來賦值,或者你可以使用現(xiàn)有變量的值和其他操作符組合:

kelly@octarine ~> cat revenues
20021009        20021013        consultancy     BigComp         2500
20021015        20021020        training        EduComp         2000
20021112        20021123        appdev          SmartComp       10000
20021204        20021215        training        EduComp         5000

kelly@octarine ~> cat total.awk
{ total=total + $5 }
{ print "Send bill for " $5 " dollar to " $4 }
END { print "---------------------------------\nTotal revenue: " total }

kelly@octarine ~> awk -f total.awk test
Send bill for 2500 dollar to BigComp
Send bill for 2000 dollar to EduComp
Send bill for 10000 dollar to SmartComp
Send bill for 5000 dollar to EduComp
---------------------------------
Total revenue: 19500

kelly@octarine ~>

類似于C的簡(jiǎn)寫 VAR+= value 也是可以接受的。

6.3.5. 更多例子

當(dāng)我們使用 awk 腳本時(shí), 第 5.3.2 節(jié) “寫輸出文件” 的例子會(huì)變得更加容易:

kelly@octarine ~/html> cat make-html-from-text.awk
BEGIN { print "<html>\n<head><title>Awk-generated HTML</title></head>\n<body bgcolor=\"#ffffff\">\n<pre>" }
{ print $0 }
END { print "</pre>\n</body>\n</html>" }

而且當(dāng)用 awk 來替代 sed 后,命令也變得更加直截了當(dāng):

kelly@octarine ~/html> awk -f make-html-from-text.awk testfile > file.html

在你系統(tǒng)上的awk例子。

我們?cè)俅位氐桨阆到y(tǒng)啟動(dòng)腳本的目錄。輸入一個(gè)和以下相似的命令來查看更多 awk 命令的使用方法:

grep awk /etc/init.d/*

6.3.6. printf程序

為了更精確的控制 print 提供的正常輸出格式,可以使用 printf。 printf命令可以用來指明每個(gè)項(xiàng)目使用的域的寬度,同時(shí)也有用于數(shù)字的多種格式選擇。這一切只要增加一個(gè)字符串,叫做格式字符串,控制怎樣和那里來打印那些項(xiàng)目。

語法也和C語言的 printf 語句相似;請(qǐng)察看你的C介紹手冊(cè)。 gawk 信息頁面包含完整的解釋。

 

源文檔 <http://savs.hcc.edu.tw/~chuavv/bash/Bash-Beginners-Guide-SimplifiedChinese/ch06s03.html>

 

6.4. 總結(jié)

gawk 工具解釋特殊目的的編程語言,處理簡(jiǎn)單的數(shù)據(jù)重新格式化的工作,只需要幾行代碼。他是通常UNIX awk 命令的免費(fèi)版本。

這個(gè)工具從輸入數(shù)據(jù)讀取行且能夠方便的識(shí)別。 print 是最普通的來過濾和格式化定義的域的程序。

閑置的變量可以直接聲明也允許在處理輸入流的同時(shí)進(jìn)行簡(jiǎn)單的計(jì)算求和,統(tǒng)計(jì)和其他運(yùn)算。變量和命令可以放到 awk 腳本來進(jìn)行后臺(tái)處理。

 

源文檔 <http://savs.hcc.edu.tw/~chuavv/bash/Bash-Beginners-Guide-SimplifiedChinese/ch06s04.html

posted on 2012-03-02 13:59 冬瓜 閱讀(579) 評(píng)論(0)  編輯 收藏 引用 所屬分類: 轉(zhuǎn)貼
青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            一区二区日韩伦理片| 久久狠狠一本精品综合网| 欧美a级大片| 亚洲欧美日韩国产中文| 亚洲国产裸拍裸体视频在线观看乱了 | 国产精品你懂的| 国产精品视频精品视频| 国产精品毛片a∨一区二区三区|国 | 一本大道久久a久久精品综合| 亚洲国产精品va| 亚洲美女中文字幕| 午夜精品网站| 免费欧美日韩国产三级电影| 欧美大秀在线观看| 亚洲视频www| 亚洲欧美在线看| 免费亚洲电影在线| 欧美午夜精品| 亚洲国产日韩欧美在线动漫| 亚洲一区欧美| 久久夜精品va视频免费观看| 亚洲国产日韩在线一区模特| 欧美性猛交一区二区三区精品| 国产精品免费在线| 在线观看一区二区视频| 一区二区三区欧美激情| 久久久精品国产一区二区三区| 欧美大胆a视频| 亚洲在线国产日韩欧美| 欧美二区在线| 国产在线不卡| 亚洲在线一区| 亚洲电影av| 欧美一级成年大片在线观看| 欧美激情精品久久久久久大尺度 | 欧美精品导航| 国模一区二区三区| 亚洲免费在线看| 亚洲黄色性网站| 久久一区亚洲| 国产一区免费视频| 午夜精品久久久99热福利| 女同一区二区| 久久久久久电影| 国产一区激情| 欧美一区日本一区韩国一区| 亚洲人妖在线| 欧美高清免费| 亚洲黑丝一区二区| 免费日韩av| 久久久久久久波多野高潮日日 | 国产精品一区久久| 夜夜嗨av一区二区三区| 欧美高清日韩| 麻豆9191精品国产| 亚洲高清视频一区| 欧美成年人网站| 久久综合伊人77777尤物| 国产午夜久久| 美女视频黄免费的久久| 久久精品一区二区三区中文字幕 | 亚洲精品社区| 亚洲丰满少妇videoshd| 麻豆视频一区二区| 亚洲国产经典视频| 美国十次成人| 免费不卡亚洲欧美| 亚洲精品黄色| 9人人澡人人爽人人精品| 欧美日韩不卡| 午夜视频一区| 久久精品欧洲| 久久精品成人| 国产主播在线一区| 免费观看成人| 欧美成人免费小视频| 日韩午夜在线电影| 国产精品99久久久久久白浆小说| 国产精品xvideos88| 性欧美大战久久久久久久久| 亚洲欧美日韩天堂一区二区| 国产一区二区三区网站| 浪潮色综合久久天堂| 嫩草国产精品入口| 宅男噜噜噜66国产日韩在线观看| 一区二区三区四区五区精品| 国产精品一区二区三区成人| 久久久一区二区三区| 另类人畜视频在线| 亚洲视频 欧洲视频| 亚洲欧美日韩一区| 亚洲黄色av| 一本久久a久久免费精品不卡| 国产精品videossex久久发布| 久久精品一区| 欧美精品色网| 久久精品欧美日韩精品| 久久夜色精品国产欧美乱极品| 一本久久a久久免费精品不卡| 亚洲伊人色欲综合网| 亚洲国产成人久久综合| 在线视频亚洲一区| 亚洲电影第1页| 亚洲欧美成人一区二区三区| 1769国内精品视频在线播放| 一本色道久久88综合日韩精品| 国产亚洲精品资源在线26u| 欧美成va人片在线观看| 国产精品国产三级国产普通话三级| 午夜一区二区三视频在线观看| 亚洲一区二区毛片| 日韩性生活视频| 欧美在线视频一区二区| 亚洲美女在线看| 久久视频在线免费观看| 亚洲欧美日韩久久精品| 欧美精品不卡| 欧美成人免费一级人片100| 国产精品久久久久久久7电影| 欧美激情久久久| 极品尤物av久久免费看| 亚洲一二三区精品| 亚洲国产美女| 久久久av毛片精品| 亚洲女同精品视频| 久久婷婷色综合| 久久久久久电影| 国产精品入口福利| 一区二区免费看| 亚洲一区三区电影在线观看| 欧美精品偷拍| 日韩午夜激情电影| 91久久夜色精品国产网站| 久久成人人人人精品欧| 亚洲一区二区三区在线视频| 久久亚洲视频| 欧美激情一区二区三区蜜桃视频| 国产一区二区黄色| 亚洲精华国产欧美| 久久中文字幕一区| 亚洲国产精品久久久| 国产精品视频久久一区| 狂野欧美一区| 在线观看日韩av电影| 久久不射中文字幕| 久久视频一区| 亚洲电影天堂av| 欧美.www| 亚洲国产高清视频| 亚洲破处大片| 欧美日韩999| 亚洲淫片在线视频| 久久久久一区二区三区| 激情婷婷久久| 欧美成人在线免费观看| 亚洲日本免费电影| 亚洲一区免费看| 黑人巨大精品欧美一区二区| 亚洲精选在线观看| 亚洲一区在线免费| 一区二区三区黄色| 欧美一级片久久久久久久| 久久精品国内一区二区三区| 国产一区二区三区网站| 你懂的亚洲视频| 夜夜嗨av色一区二区不卡| 欧美一级大片在线观看| 精品91在线| 欧美天天影院| 久久久久久久久一区二区| 欧美成人三级在线| 亚洲午夜av电影| 一区二区三区在线观看欧美| 欧美国产91| 亚洲综合首页| 亚洲国产欧美不卡在线观看| 亚洲一区在线观看视频| 精品1区2区| 国产精品―色哟哟| 欧美高潮视频| 午夜国产精品视频| 欧美一区二区在线免费观看| 亚洲精品视频在线| 欧美在线观看日本一区| 亚洲在线不卡| 欧美成人免费一级人片100| 亚洲资源av| 亚洲激情社区| 国产一区二区三区精品久久久| 欧美国产视频日韩| 午夜精品久久久久影视| 亚洲黄色在线| 麻豆精品在线观看| 亚欧成人精品| 一区二区三区精密机械公司 | 亚洲深夜福利在线| 亚洲日本久久| 欧美激情视频给我| 欧美gay视频激情| 久久精品人人做人人爽电影蜜月|