黄a在线观看-黄a在线-黄a大片-黄色片在线看-黄色毛片免费-黄色大片网站

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Unix系列shell程序編寫(下)

瀏覽:199日期:2024-06-26 14:40:06

Until語(yǔ)句

While語(yǔ)句中,只要某條件為真,則重復(fù)執(zhí)行循環(huán)代碼,until語(yǔ)句正好同while相反,該語(yǔ)句使循環(huán)代碼重復(fù)執(zhí)行,直到遇到某一條件為真才停止。

Until語(yǔ)句的結(jié)構(gòu)如下: until command do command command … … done

可以用until語(yǔ)句替換上面?zhèn)浞莩绦虻膚hile語(yǔ)句,完成同樣的功能:

until [ $ANS != Y -a $ANS != y ]

for 循環(huán) 在介紹for循環(huán)之前,我們要學(xué)個(gè)非常有用的Unix命令:shift。我們知道,對(duì)于位置變量或命令行參數(shù),其個(gè)數(shù)必須是確定的,或者當(dāng)Shell程序不知道其個(gè)數(shù)時(shí),可以把所有參數(shù)一起賦值給變量$*。若用戶要求Shell在不知道位置變量個(gè)數(shù)的情況下,還能逐個(gè)的把參數(shù)一一處理,也就是在$1后為$2,在$2后面為$3等。在 shift命令執(zhí)行前變量$1的值在shift命令執(zhí)行后就不可用了。

示例如下:

#測(cè)試shift命令(x_shift.sh) until [ $# -eq 0 ] do echo '第一個(gè)參數(shù)為: $1 參數(shù)個(gè)數(shù)為: $#' shift done 執(zhí)行以上程序x_shift.sh: $./x_shift.sh 1 2 3 4

結(jié)果顯示如下:

第一個(gè)參數(shù)為: 1 參數(shù)個(gè)數(shù)為: 3 第一個(gè)參數(shù)為: 2 參數(shù)個(gè)數(shù)為: 2 第一個(gè)參數(shù)為: 3 參數(shù)個(gè)數(shù)為: 1 第一個(gè)參數(shù)為: 4 參數(shù)個(gè)數(shù)為: 0從上可知shift命令每執(zhí)行一次,變量的個(gè)數(shù)($#)減一,而變量值提前一位,下面代碼用until和shift命令計(jì)算所有命令行參數(shù)的和。

#shift上檔命令的應(yīng)用(x_shift2.sh) if [ $# -eq 0 ] then echo 'Usage:x_shift2.sh 參數(shù)' exit 1 fi sum=0 until [ $# -eq 0 ] do sum=`expr $sum + $1` shift done echo 'sum is: $sum'

執(zhí)行上述程序:

$x_shift2.sh 10 20 15

其顯示結(jié)果為:

45

shift命令還有另外一個(gè)重要用途,Bsh定義了9個(gè)位置變量,從$1到$9,這并不意味著用戶在命令行只能使用9個(gè)參數(shù),借助shift命令可以訪問(wèn)多于9個(gè)的參數(shù)。

Shift命令一次移動(dòng)參數(shù)的個(gè)數(shù)由其所帶的參數(shù)指定。例如當(dāng)shell程序處理完前九個(gè)命令行參數(shù)后,可以使用shift 9命令把$10移到$1。

在熟悉了shift命令后,我們一起看看,Bsh程序中非常有用的for循環(huán)語(yǔ)句,這種循環(huán)同上面說(shuō)的while和until循環(huán)不同,for語(yǔ)句中的循環(huán)是否執(zhí)行并不由某個(gè)條件的真和假來(lái)決定,決定for循環(huán)是否繼續(xù)的條件是參數(shù)表中是否還有未處理的參數(shù)。

For語(yǔ)句的結(jié)構(gòu)如下:

for variable in arg1 arg2 … argn do command command … … done

下面是for循環(huán)的簡(jiǎn)單例子:

for LETTER in a b c d do echo $LETTER done

程序執(zhí)行結(jié)果如下:

a b c d

在上面計(jì)算參數(shù)和的例子中,我們可以用for循環(huán),實(shí)現(xiàn)如下:

#測(cè)試 for 程序(x_for.sh)

if [ $# -eq 0 ] then   echo 'Usage:x_for.sh 參數(shù)… …'   exit 1 fi sum=0 for I in $* do   sum=`expr $sum + $I` done echo 'sum is: $sum'

中斷循環(huán)指令

在程序循環(huán)語(yǔ)句中,我們有時(shí)候希望遇到某中情況時(shí)候結(jié)束本次循環(huán)執(zhí)行下次循環(huán)或結(jié)束這個(gè)循環(huán),這就涉及到兩條語(yǔ)句:continue和break。continue命令可使程序忽略其后循環(huán)體中的其他指令,直接進(jìn)行下次循環(huán),而break命令則立刻結(jié)束循環(huán),執(zhí)行循環(huán)體后面的的語(yǔ)句。

#測(cè)試continue I=1 while [ $I -lt 10 ] do if [ $I -eq 3 ] then continue fi if [ $I -eq 7 ] then break fi echo '$Ic' done

執(zhí)行上面程序,結(jié)果如下:

12456789

與或結(jié)構(gòu)

使用與/或結(jié)構(gòu)有條件的執(zhí)行命令

Shell程序中可以使用多種不同的方法完成相同的功能,例如until和while語(yǔ)句就可以完成相同的功能,同樣,除了if-then-else結(jié)構(gòu)可以使命令有條件的執(zhí)行外,$$和||操作符也能完成上述功能。在C語(yǔ)言中這兩個(gè)操作符分別表示邏輯與和邏輯或操作。在Bourne Shell中,用&&連接兩條命令的含義只有前面一條命令成功執(zhí)行了,后面的命令才會(huì)執(zhí)行。

&&操作的形式為:

command && command

例如語(yǔ)句:

rm $TEMPDIR/* && echo 'Files successfully removed'

只有rm命令成功執(zhí)行以后,才會(huì)執(zhí)行echo命令。若用if-then語(yǔ)句實(shí)現(xiàn)上述功能,形式為:

if rm $TEMPDIR/* then echo 'Files successfully removed' fi 相反,用||連接兩條命令的含義為只有第一條命令執(zhí)行失敗才執(zhí)行第二條命令,例如:

rm $TEMPDIR/* || echo 'File were not removed'

上面語(yǔ)句的等價(jià)形式為:

if rm $TEMPDIR/* then : else echo 'Files were not removed' fi 這兩種操作符可以聯(lián)合使用,如在下面的命令行中,只有command1和command2執(zhí)行成功后,command3才會(huì)執(zhí)行:

command1 && command2 && command3

下面的命令行表示只有command1成功執(zhí)行,command2不成功執(zhí)行時(shí),才會(huì)執(zhí)行command3。

&&和||操作符可以簡(jiǎn)化命令條件執(zhí)行的格式,但一般只用于一條命令的條件執(zhí)行。如果許多命令都使用這兩個(gè)操作符,那么整個(gè)程序的可讀性將變的很差,所以在多條命令的條件執(zhí)行時(shí),最好采用可讀性好的if語(yǔ)句。

函數(shù)

現(xiàn)在我們介紹Shell程序中的函數(shù)部分,基本上任何高級(jí)語(yǔ)言都支持函數(shù)這個(gè)東西,能讓我們勝好多事情的東西,至少省的頻繁的敲擊相同的東西,好了come on Shell程序中的函數(shù)

函數(shù)又叫做子程序,可以在程序中的任何地方被調(diào)用,其格式如下:

函數(shù)名字() { command ... ... command; }

Shell程序的任何地方都可以用命令 '函數(shù)名字' 調(diào)用,使用函數(shù)的好處有兩點(diǎn),一點(diǎn)是使用函數(shù)可以把一個(gè)復(fù)雜的程序化為多個(gè)模塊,易于管理,符合結(jié)構(gòu)化程序的設(shè)計(jì)思想,另一個(gè)好處是代碼的重用。

Shell函數(shù)和Shel程序比較相似,它們的區(qū)別在于Shell程序在子Shell中運(yùn)行,而Shell函數(shù)在當(dāng)前Shell中運(yùn)行。因此,在當(dāng)前Shell中可以看到Shell函數(shù)對(duì)變量的修改。在任何Shell中都可以定義函數(shù),包括交互式Shell。

例如:

$dir() {ls -l;}

結(jié)果是我們?cè)?后面打dir,其顯示結(jié)果同ls -l的作用是相同的。該dir函數(shù)將一直保留到用戶從系統(tǒng)退出,或執(zhí)行了如下所示的unset命令: $unset dir 下面的例子說(shuō)明了函數(shù)還可以接受位置參數(shù):

$dir(){_ >echo 'permission  ln owner group  file sz last access >ls -l $*; >}

運(yùn)行 dir a* 看產(chǎn)生什么結(jié)果

參數(shù)a*傳遞到dir函數(shù)中并且代替了$*

通常Shell程序?qū)⒃谧覵hell中執(zhí)行,該程序?qū)ψ兞康母淖冎辉谧覵hell中有效而在當(dāng)前Shell中無(wú)效。'.'命令可以使Shell程序在當(dāng)前Shell中執(zhí)行。用戶可以在當(dāng)前Shell中定義函數(shù)和對(duì)變量賦值。通常用下面命令來(lái)重新初使化.profile對(duì)Shell環(huán)境的設(shè)置。 $ . .profile 由于看到這部分相對(duì)簡(jiǎn)單,我們還是順便說(shuō)說(shuō)trap好了

使用trap命令進(jìn)行例外處理

用戶編寫程序在程序運(yùn)行時(shí)可能會(huì)發(fā)生一些例外情況,比如執(zhí)行該程序的用戶按中斷鍵或使用kill命令,或者控制終端突然與系統(tǒng)斷開等。unix系統(tǒng)中的上述情況會(huì)使系統(tǒng)向進(jìn)程發(fā)一個(gè)信號(hào),通常情況下該信號(hào)使進(jìn)程終止運(yùn)行。有時(shí)侯用戶希望進(jìn)程在接到終止信號(hào)時(shí)進(jìn)行一些特殊的操作。若進(jìn)程在運(yùn)行時(shí)產(chǎn)生一些臨時(shí)文件,又因接受到的信號(hào)而終止。那么該進(jìn)程產(chǎn)生的臨時(shí)文件將保留下來(lái)。在bsh中,用戶可以使用trap命令修改進(jìn)程接收到終止信號(hào)時(shí)進(jìn)行的默認(rèn)操作。 trap命令格式如下:

 trap command_string signals

多數(shù)系統(tǒng)中共有15種發(fā)給進(jìn)程的信號(hào),默認(rèn)情況下大多數(shù)信號(hào)都會(huì)使程序終止。用戶最好查閱自己系統(tǒng)的文擋,看看本系統(tǒng)內(nèi)使用的信號(hào)種類。除了信號(hào)為9(真正的kill信號(hào))不能使用trap命令外,其他信號(hào)所帶來(lái)的操作都可以用trap命令進(jìn)行指定。下面是trap命令中經(jīng)常使用的幾種信號(hào):

信號(hào) 功能 1   掛起 2操作中斷 15  軟終止(kill信號(hào))

若命令串中包含不只一條命令,必須使用引號(hào)將整個(gè)命令括起來(lái),具體是單引號(hào)還是雙引號(hào),由用戶是否需要變量替換決定。' '替換,' '不替換。

使用下面trap命令可以使程序在接收到掛起、中斷或kill信號(hào)時(shí),首先把臨時(shí)文件刪除,然后退出:

trap 'rm $TEMPDIR/* $$;exit' 1 2 15

在上面例子中,當(dāng)Shell讀取trap命令時(shí),首先對(duì)$TEMPDIR和$$進(jìn)行變量替換,替換之后的命令串將被保存在trap表中,若上例中trap命令使用單引號(hào)時(shí),trap命令執(zhí)行時(shí)候,不進(jìn)行變量替換,而把命令串 rm $TEMPDIR/* $$;exit 放到trap表中,當(dāng)檢測(cè)到信號(hào)時(shí),程序解釋執(zhí)行trap表中的命令串,此時(shí)進(jìn)行變量替換。前面變量$TEMPDIR和$$的值為執(zhí)行trap指令時(shí)候的值,后一種情況中變量的值為程序接收到信號(hào)時(shí)候的值,所以 '、'一定要區(qū)分仔細(xì)。

下面命令的含義為用戶按二次中斷鍵后,程序才終止:

trap 'trap 2' 2

一般trap命令中的命令串中幾乎都包含exit語(yǔ)句,上面rm的例子若無(wú)exit語(yǔ)句,接收到信號(hào)rm命令執(zhí)行完后程序?qū)炱?。但有時(shí)用戶也需要程序在接到信號(hào)后掛起,例如當(dāng)終端和系統(tǒng)斷開后,用戶發(fā)出掛起信號(hào),并執(zhí)行空命令,如下:

trap : 1

若用戶想取消前trap指令設(shè)置的命令串,可以再執(zhí)行trap命令,在命令中不指定命令串表示接收到信號(hào)后進(jìn)行默認(rèn)的操作,命令如下: trap 1

規(guī)范Shell

獲取UNIX類型的選項(xiàng):

unix有一個(gè)優(yōu)點(diǎn)就是標(biāo)準(zhǔn)UNIX命令在執(zhí)行時(shí)都具有相同的命令行格式:

command -options parameters

如果在執(zhí)行Shell程序也采用上述格式,Bourne Shell中提供了一條獲取和處理命令行選項(xiàng)的語(yǔ)句,即getopts語(yǔ)句。該語(yǔ)句的格式為:

getopts option_string variable

其中option_string中包含一個(gè)有效的單字符選項(xiàng)。若getopts命令在命令行中發(fā)現(xiàn)了連字符,那么它將用連字符后面的字符同option_string相比較。若有匹配,則把變量variable的值設(shè)為該選項(xiàng)。若無(wú)匹配,則variable設(shè)為?。當(dāng)getopts發(fā)現(xiàn)連字符后面沒(méi)有字符,會(huì)返回一個(gè)非零的狀態(tài)值。Shell程序中可以利用getopts的返回值建立一個(gè)循環(huán)。

下面代碼說(shuō)明了date命令中怎么使用getopts命令處理各種選項(xiàng),該程序除了完成unix的標(biāo)準(zhǔn)命令date的功能外,還增加了許多新的選項(xiàng)。 #新date程序 if [ $# -lt 1 ] then date else while getopts mdyDHMSTJjwahr OPTION do case $OPTION in m)date '+%m' d)date '+%d' y)date '+%y' D)date '+%D' H0date '+%H' M)date '+%M' S)date '+%S' T)date '+%T' j)date '+%j' J)date '+%y%j' w)date '+%w' a)date '+%a' h)date '+%h' r)date '+%r' ?)echo '無(wú)效的選項(xiàng)!$OPTION' esac done fi 有時(shí)侯選項(xiàng)中還帶一個(gè)值,getopts命令同樣也支持這一功能。這時(shí)需要在option_string中選項(xiàng)字母后加一個(gè)冒號(hào)。當(dāng)getopts命令發(fā)現(xiàn)冒號(hào)后,會(huì)從命令行該選項(xiàng)后讀取該值。若該值存在,那么將被存在一個(gè)特殊的變量OPTARG中。如果該值不存在,getopts命令將在OPTARG中存放一個(gè)問(wèn)號(hào),并且在標(biāo)準(zhǔn)錯(cuò)誤輸出上顯示一條消息。

下面的例子,實(shí)現(xiàn)拷貝一個(gè)文件,并給文件賦一個(gè)新的名字。-c選項(xiàng)指定程序拷貝的次數(shù),-v選項(xiàng)要求顯示新創(chuàng)建文件的文件名。

#--拷貝程序

COPIES=1 VERBOSE=N while getopts vc:OPTION do case $OPTION in c)COPIES=$OPTARG v)VERBOSE=Y ?)echo '無(wú)效參數(shù)!'   exit 1 esac done if [ $OPTIND -gt $# ] then echo 'No file name specified'   exit 2 fi shift 'expr $OPTIND - 1' FILE=$1 COPY=0 while [ $COPIES -gt $COPY ] do COPY='expr $COPY + 1' cp $FILE $ {FILE} $ {COPY} if [ VERBOSE = Y } then echo ${FILE} $ {COPY} fi done

規(guī)范Shell:

我們知道環(huán)境變量PS1是提示符,看下面程序chdir: if [ ! -d '$!' ] then echo '$1 is not a Directory' exit 1 fi cd $1 PS1=''pwd'>' export PS1

我們執(zhí)行:

 $chdir /usr/ice666

結(jié)果提示符號(hào)變成/usr/ice666>了嗎?沒(méi)有,為什么?

原因在于:chdir在子Shell中執(zhí)行,變量PS1的修改在當(dāng)前Shell中也不會(huì)起作用,若要chdir完成意想中的功能,必須在當(dāng)前Shell中執(zhí)行該命令。最好的方法就是把其改成一個(gè)函數(shù)并且在.profile文件中定義。但若要把函數(shù)放到單個(gè)文件中并在當(dāng)前Shell中執(zhí)行,則需要使用 . 命令,并將chdir重寫成一個(gè)函數(shù),把其中的exit改寫成return。下面代碼是 .ice_ps的內(nèi)容:

#--提示符 chdir() { if [ !-d '$1' ] then echo ' $1 is not a directory' return fi cd $1 PS1=''pwd'>' export PS1; }

然后我們?cè)?profile文件中加入下面語(yǔ)句

.ice_ps

然后在切換目錄的時(shí)候,我們用chdir命令,結(jié)果是什么呢,自己實(shí)驗(yàn)好了!   調(diào)試Shell程序

1>調(diào)試shell程序

用戶剛編寫完Shell程序中,不可避免的會(huì)有錯(cuò)誤,這時(shí)我們可以利用Bsh中提供的跟蹤選項(xiàng),該選項(xiàng)會(huì)顯示剛剛執(zhí)行的命令及參數(shù)。用戶可以通過(guò)set命令打開-x選項(xiàng)或在啟動(dòng)Shell使用-x選項(xiàng)將Shell設(shè)置成跟蹤模式。例如有下面代碼ice_tx:

if [ $# -eq 0 ] then echo 'usage:sumints integer list' exit 1 fi sum=0 until [ $# -eq 0 ] do sum='expr $sum + $1' shift done echo $sum

我們用跟蹤模式運(yùn)行:

$sh -x ice_tx 2 3 4 結(jié)果顯示: +[ 3 -eq 0 ] +sum=0 +[ 3 -eq 0 ] +expr 0+2 +sum=2 +shift +[ 2 -eq 0 ] +expr 2+3 +sum=5 +shift +[ 1 -eq 0 ] +expr 5+4 +sum=9 +[ 0 -eq 0 ] +echo 9 9

從上面可以看出,跟蹤模式下Shell顯示執(zhí)行的每一條命令以及該命令使用的變量替換后的參數(shù)值。一些控制字如if、then、until等沒(méi)顯示。 2>命令分組

Shell中若干命令可以組成一個(gè)單元一起執(zhí)行。為了標(biāo)識(shí)一組命令,這些命令必須放到'()'或'{}'中。放在'()'中的命令將在子Shell中運(yùn)行,而放在'{}'中的命令將在當(dāng)前Shell中運(yùn)行。子Shell中運(yùn)行的命令不影響當(dāng)前Shell的變量。當(dāng)前Shell中運(yùn)行的命令影響當(dāng)前Shell的變量。

$NUMBER=2 $(A=2;B=2;NUMBER='expr $A+$B';echo $NUMBER) 結(jié)果為:4 $echo $NUMBER 結(jié)果為:2 如果把上面的()變成{},結(jié)果會(huì)是怎么樣的呢?

3>使用Shell分層管理器shl

UNIX是一個(gè)多道程序設(shè)計(jì)的操作系統(tǒng),一些UNIX系統(tǒng)利用這一特性提供了Shell層次管理器shl。使用shl用戶一次可以打開多個(gè)層次的Shell,其中活躍的Shell可以從終端上獲得輸入。但所有Shell的輸出都可在終端上顯示,除非顯示被禁止。

多個(gè)Shell中有一個(gè)為shl,當(dāng)用戶在某個(gè)Shell中工作時(shí),可以通過(guò)使用特殊字符(一般為Ctrl+z)返回shl。為了同其他Shell區(qū)別,shl中提示符為'>>>'。當(dāng)用戶工作在Shell層次管理器中時(shí),可以創(chuàng)建、激活和刪除Shell,下面是shl中使用的命令。

create name產(chǎn)生名為name的層次 delete name刪除名為name的層次 block name 禁止名為name的層次的輸出 unblock name  恢復(fù)名為name的層次的輸出 resume name激活名為name的層次 toggle 激活近來(lái)經(jīng)常使用的層次 name  激活名為name的層次

layers [-l] name  對(duì)于表中的每個(gè)層次,顯示其正在運(yùn)行的進(jìn)程的進(jìn)程號(hào),-l選項(xiàng)要求顯示詳細(xì)信息。

help  顯示shl命令的幫助信息 quit  退出shl以及所有被激活的層次 總結(jié)

在前面我們主要介紹了sh的變量、基本語(yǔ)法、程序設(shè)計(jì)等。如果掌握了這些內(nèi)容,在學(xué)習(xí)其他UNIX下編程語(yǔ)言的時(shí)候,相信有一定的好處,我們說(shuō)了,在大多數(shù)的UNIX中都提供Bourn Shell,而且很少有象sh這樣強(qiáng)大的腳本編輯語(yǔ)言了,是系統(tǒng)管理員和程序員的一筆財(cái)富,并且不需要額外的軟件環(huán)境,對(duì)文件等處理借助unix命令,實(shí)現(xiàn)起來(lái)比c實(shí)現(xiàn)還要簡(jiǎn)單。

標(biāo)簽: Unix系統(tǒng)
主站蜘蛛池模板: 美女屁股无遮挡 | 色综合99久久久无码国产精品 | 台湾佬成人中文网222vvv | 亚洲一区网站 | 香蕉911| 国产乱色国产精品播放视频 | 涩涩屋导航福利av导航 | 岛国精品一区二区 | 久久久久久久久久久久久9999 | caoporn人人| 成年人福利 | 日本三级日本三级韩国三级视 | 无套内谢孕妇毛片免费看 | 日韩成人激情视频 | 看全黄大色黄大片美女人 | 国内精品人妻久久毛片app | 久久精品无码专区免费东京热 | 国产精品久久久久久久久久免费看 | 亚洲精品午夜国产va久久成人 | 成年人网站在线观看视频 | 先锋影音一区二区三区 | 久久精品人妻少妇一区二区三区 | 国产曰肥老太婆无遮挡 | 男人深夜影院 | a一级视频| 精品国产一区二区三区粉芽 | 亚洲午夜精品久久久久久 | 九九爱爱视频 | 新版本天堂资源在线中文8的特点 | 99在线视频精品 | 亚洲久操| 亚洲综合视频网站 | 黄色免费在线网址 | 人妻被按摩到潮喷中文字幕 | 欧美三日本三级少妇99印度 | youjizz国产精品| 葵司有码中文字幕二三区 | 久久综合久久美利坚合众国 | 亚洲天堂国产 | 国产中文字幕在线 | 青青国产精品 | 无码h黄肉动漫在线观看 | 精品麻豆av | 亚洲一级片免费 | xxxxxx黄色| 国产精品白浆一区二小说 | 久在线观看视频 | 日韩啪| 精品视频无码一区二区三区 | 成人日韩欧美 | 亚洲精品成人av在线 | 91成人在线观看喷潮蘑菇 | 高潮流白浆潮喷在线播放视频 | 欧美jizzhd精品欧美性24 | 都市激情av| 日本一区二区精品视频 | 成人欧美日韩一区二区三区 | 亚洲国产精品成人va在线观看 | 亚洲国产中文字幕 | 国产亚洲天堂 | 黄色一级二级 | 久久久无码中文字幕久... | 在线视频一区二区三区四区 | 欧美人与动人物牲交免费观看久久 | 99re只有精品| 国产免费xvideos视频入口 | 久久久久久一区二区 | 免费男人和女人牲交视频全黄 | 无码一区二区三区视频 | 97精品一区 | 久久九九综合 | 香蕉视频入口 | 免费在线观看成人av | 乌克兰少妇xxxhd做受 | 久久亚洲精品中文字幕 | 美女国产网站 | 成人性生交大片免费7 | 二色av | 蜜桃视频久久 | 国产又粗又爽又猛又大的动漫片 | 日本一级bbbbbbbbb | bbbbbxxxxx性欧美 | 久久久精品国产 | 国产剧情一区 | 欧美一区二区三区在线免费观看 | av网站免费线看 | 欧美一级片免费观看 | 野战视频aaaaa免费观看 | 55夜色66夜色国产精品视频 | 久久久久久久久久久99 | 日本黄页网站免费大全 | 粗大猛烈进出高潮视频 | 少妇性l交大片欧洲热妇乱xxx | 色伊人亚洲综合网站 | 欧美国产激情 | 欧美激情精品久久 | 亚洲一级黄色毛片 | 国产精品av在线 | 亚洲加勒比在线 | 波多野结衣高清一区二区三区 | 日产精品一区二区三区在线观看 | 成人黄色性视频 | 老司机久久精品视频 | 强插女教师av在线 | 黄色片免费在线观看 | 99精产国品一二三产品香蕉 | 无码免费中文字幕视频 | 欧美女优在线 | 在线视频一区二区 | 奇米影视第四色首页 | 免费性色视频 | 免费公开在线视频 | 无人区码一码二码w358cc | 国产有码在线观看 | 伊人无码精品久久一区二区 | 97精品国产手机 | 日本乱偷人妻中文字幕 | 国产免费叼嘿网站免费 | 黄色av免费在线播放 | 国产精品片一区二区三区 | 大尺度做爰啪啪高潮床戏 | 深夜男女福利18免费软件 | y111111国产精品久久婷婷 | 久久人人爱 | 久久精品国产中国久久 | 印度精品av三级 | 国产精品99久久久久久人免费 | 国产精品一区二av18款 | 国产熟妇乱子伦视频在线观看 | 国产精品免费在线播放 | 久草在线观看资源 | 亚洲自拍99 | 国产98色在线 | 日韩 | 97久久人人超碰超碰窝窝 | 青青久草网 | 91午夜精品亚洲一区二区三区 | 国产视频一区二区不卡 | 免费一区二区三区 | 日本欧美一区二区 | 国产精品日韩av在线播放 | 草逼视频免费看 | 久久有精品 | 亚洲卡一卡二 | 亚洲婷婷综合色高清在线 | 国产视频xxxx | 桃色一区二区三区 | 欧美一二区 | 久久久做| 亚洲日本人的毛茸茸 | 中文字幕亚洲精品日韩 | 丁香在线视频 | 亚洲综合久久网 | 国产精品17p | 狠狠躁夜夜躁人人爽视频 | 中文字幕一本一二本迫 | av免费观看大全 | 自拍99| 嫩草嫩草嫩草嫩草嫩草嫩草 | 久久精品丝袜高跟鞋 | 国色天香亚欧乱码 | 爱情岛av亚洲论坛自拍品质 | a视频免费看 | 欧美黄色免费看 | www夜片内射视频日韩精品成人 | 91私密视频| 欧美成人一级 | 久久久久久a亚洲欧洲aⅴ96 | 8x8ⅹ国产精品一区二区二区 | 日本三级韩国三级欧美三级 | 91popny丨九色丨国产 | 久久久久久亚洲精品不卡4k岛国 | 韩国三级hd中文字幕 | 国产精品亚洲а∨无码播放麻豆 | 亚洲成av人片在线观看 | 14萝自慰专用网站 | 蜜臀99久久精品久久久久小说 | 精品国偷自产在线视频 | 欧美三级网站在线观看 | 中国国产毛片 | 午夜天堂av天堂久久久 | 久久久久久亚洲综合影院红桃 | 中文字幕日韩精品无码内射 | 日韩视频免费在线 | 国产av一区二区三区最新精品 | av色婷婷| 韩国av精华合集3小时 | 玉米视频成人免费看 | 亚洲国产福利一区二区三区 | 国内少妇毛片视频 | 精品国产一区二区三区四区精华 | 国产精品9999久久久久仙踪林 | 久久精品蜜芽亚洲国产av | 天天干天天舔天天操 | 久久中文字幕一区二区三区 | 一区二区三区波多野结衣 | 婷婷开心激情综合五月天 | 69精品久久久 | 国产精品亚州 | 久久精品日产第一区二区三区在哪里 | 亚洲元码 | 天天操天天透 | 欧美婷婷久久五月精品三区 | 久久精品国产一区二区三区 | 久久精品国产99国产精品澳门 | 久精品国产 | 午夜精品久久久久久不卡8050 | 无码国内精品人妻少妇蜜桃视频 | 人人添人人澡人人澡人人人人 | 手机在线免费观看av片 | 欧美激情视频一区二区三区不卡 | 国产乱子伦视频在线播放 | 天堂网中文在线观看 | 亚洲精品午夜精品 | 亚洲国产精品成人综合久久久久久久 | 国产一级精品绿帽视频 | 无码av中文一区二区三区 | 隔壁老王国产在线精品 | 国产999在线 | 一级片免费视频 | 天天干天天噜 | 亚洲国产一区二区三区四区四季 | 精品国产18久久久久久二百 | 国产精品久久夂夂精品香蕉爆 | 狠狠干在线观看 | 动漫卡通精品一区二区三区介绍 | 亚洲调教欧美在线 | 一级黄色免费毛片 | 免费观看一区二区 | 人妻夜夜爽天天爽三区 | 黄色裸体片 | a国产一区二区免费入口 | 色女人在线 | 一本大道加勒比免费视频 | 亚洲永久av| 日韩av资源网 | 蜜桃视频在线观看污 | 天下第一社区视频www日本 | 国产中文一区二区三区 | 日韩在线高清视频 | 国产精品久久777777 | 国产农村一国产农村无码毛片 | 欧美黄色特级视频 | 欧美午夜免费 | 天天干夜夜躁 | 精品无码黑人又粗又大又长 | 国产av一区二区三区天堂综合网 | 日女人网站 | 好爽又高潮了毛片免费下载 | 91麻豆精品91久久久久同性 | 韩日av免费 | 蜜臀av中文字幕 | 亚洲不卡网 | 欧美性生活视频 | 日日碰狠狠丁香久燥 | 欧美爱爱小视频 | 一本色道久久88综合亚洲精品ⅰ | 精品人妻一区二区三区四区在线 | 日本五十路岳乱在线观看 | 搡老熟女老女人一区二区 | 青青国产精品视频 | 亚洲人精品 | 国产精品vr专区 | 中文字幕日韩精品一区 | 色偷偷导航 | 久久精品人人做人人爱爱站长工具 | 色偷偷亚洲 | 中国女人内谢69xxxxⅹ视频 | 国产夜夜嗨 | 国内精品久久久久久久影视 | 性生交大片免费看女人按摩摩 | 最新国产精品视频 | 激情综合色 | 欧美精品免费观看二区 | 亚洲香蕉av在线一区二区三区 | 国产精品夜夜春夜夜爽久久小 | 欧美丰满熟妇bbbbbb | 94久久国产乱子伦精品免费 | 国产精品日韩欧美一区二区三区 | 懂色av一区二区 | 蓝牛av| 日本高清xxx | 中文字幕在线2018 | 成人福利小视频 | 99riav国产精品视频 | 蜜桃视频色 | 99精产国品一二三产品香蕉 | 久久久久久久一区 | 黄色片网站视频 | 日本一区二区三区在线观看 | 亚洲三级欧美 | 欧美久久久久久久 | 国产精品96久久久久久 | 天堂无码人妻精品av一区 | 综合精品久久 | 欧美性猛交xxxx乱大交 | 成人免费黄色av | 日韩国产精品久久久久久亚洲 | 国产成人在线网站 | 日本精品一区二区三区在线观看 | 怡红院综合网 | 91精品国产一区二区三区动漫 | 内射人妻无码色ab麻豆 | www豆豆成人网com | yy111111少妇影院无码 | 国产伦理一区二区 | 欧美国产综合视频 | 在线中文字幕亚洲 | 久久久精品久久日韩一区综合 | 男女啪啪进出阳道猛进 | 国产极品粉嫩福利姬萌白酱 | 日韩成人免费在线视频 | 亚洲一区黄色 | 成人影| 色视屏| 中文字幕综合在线 | 天天干天天干天天干天天 | 成人av一区二区三区 | 亚洲中文字幕无码一区 | 国产精品成人亚洲一区二区 | 亚洲一区二区女搞男 | 色婷婷五月综合亚洲小说 | 999这里有精品 | 伊人黄| 亚洲国产av精品一区二区蜜芽 | ww国产内射精品后入国产 | 成人3d动漫一区二区三区 | 国户精品久久久久久久久久久不卡 | 台湾成人毛片 | 91丨porny丨国产入口 | 日韩av午夜 | 精久久久久久 | 韩国精品视频在线观看 | av网在线播放 | 国产精品99久久久久久白浆小说 | 国产欧美日韩精品a在线观看 | 日韩欧三级 | 亚洲精品久久久久中文字幕m男 | 欧美成人三级在线 | 日韩成av人片在线观看 | 极品尤物一区二区三区 | 日本娇小侵犯hd | 在线观看日韩 | 欧美成人中文字幕 | 免费人成网站视频在线观看 | 欧美桃色视频 | 少妇无套高潮一二三区 | 久久精品免费网站 | 影音先锋成人资源网站 | 欧美性大战久久久久xxx | 19禁国产精品福利视频 | 国产清纯白嫩初高生视频在线观看 | 大度亲吻原声视频在线观看 | 在线观看一区二区三区视频 | 欧美日韩国产成人一区 | 色猫咪免费人成网站在线观看 | 麻豆视频在线观看免费网站黄 | 主播叶子户外勾搭啪啪大 | 91亚洲精品久久久蜜桃借种 | 日韩欧美视频二区 | 极品蜜桃臀肥臀-x88av | 97青青草| 啪啪国产精品 | 中文国产字幕 | 在线观看老湿视频福利 | 亚洲国产精品成人综合久久久 | 在线视频一区少妇露脸福利在线 | av日韩高清 | 一级做a爰片久久毛片a | 国产视频在线看 | 黑人巨大精品欧美一区二区 | 国产经典三级 | 白嫩少妇激情无码 | 久久综合综合 | 伊人情人色综合网站 | 日本一区二区三区在线播放 | 亚洲精品二区 | 国产在线观看你懂的 | 377人体粉嫩噜噜噜 精品久久久久久无码中文野结衣 | www国产精品视频 | 国产成人歌舞艳r舞 | 欧美成人免费在线观看视频 | 黄色免费片 | 污污内射在线观看一区二区少妇 | 中文字幕一区二区精品 | 欧美又粗大人妖一进一出 | 2018天天躁夜夜躁 | 亚洲妇女无套内射精 | 欧美另类极品videosbest最新版本 | 久久久国产精品亚洲一区 | 久久av资源站 | 18以下勿进色禁网站 | 国产寡妇精品久久久久久 | 国产三级做爰在线播放五魁 | 日本少妇高潮喷水视频 | 久草aⅴ| 国产999精品 | 精品国产区一区二 | 国产成人无码视频一区二区三区 | 性猛交ⅹxxx乱大交大片 | 7777kkk亚洲综合欧美网站 | 亚洲精品久久久中文字幕痴女 | 曰本极品少妇videossexhd 曰本一级黄色片 | 一个人看的视频www在线 | 成人性调教91| 高h1v | 中文字幕一区二区三区乱码 | 亚洲v国产v欧美v久久久久久 | 国产深夜视频 | 欧美日韩免费一区二区 | 欧美麻豆视频 | 日韩欧美99 | 成人午夜网 | 亚洲精品乱码久久观看网 | 免费黄网站在线观看 | 在线视频久 | 国产日韩精品中文字无码 | 欧美精品三级 | 97久久久久人妻精品区一 | 午夜性剧场 | 亚洲狼人av | 国产精品igao视频网入口 | 亚洲国产一线二线三线 | 国产露脸久久高潮 | 美女mm131爽爽爽 | 日本55丰满熟妇厨房伦 | 久久精品美乳 | 国产99久久 | 欧美激情a∨在线视频播放 少妇人妻无码专区视频 | 黄色a级在线观看 | 天堂网中文在线 | 色欲天天婬色婬香综合网 | 爱情岛论坛自拍 | 老子影院午夜伦不卡 | 亚洲成年轻人电影网站www | 人妻内射一区二区在线视频 | 亚洲成人高清 | 久久精品福利 | 黑人中文字幕一区二区三区 | 国产精品爽爽v在线观看无码 | 黄色高清视频在线观看 | 色偷偷888欧美精品久久久 | 女同互添互慰av毛片观看 | 波多野结衣在线播放视频 | 日本国产乱弄免费视频 | 午夜寂寞影院在线观看 | 中文字幕一区二区三区不卡 | 欧美大片在线播放 | 欧美韩一区二区三区 | h片免费观看| 久久午夜国产精品www忘忧草 | 3344久久日韩精品一区二区 | 茄子av在线 | 欧美日韩精品一区二区三区在线 | 久久精品免费播放 | av大片在线播放 | 丰满熟妇被猛烈进入高清片 | 国产精品乱子乱xxxx | 337p日本欧洲亚洲大胆精品 | 强美女免费网站在线视频 | 黄色小网站在线观看 | 白嫩大乳丰满美女白嫩白嫩 | 久久亚洲国产成人精品无码区 | 99蜜桃臀精品视频在线观看 | 91禁在线动漫 | 麻豆果冻传媒2021精品传媒一区下载 | 亚洲国产精品成人va在线观看 | 熟妇五十路六十路息与子 | 久久无码专区国产精品s | 在线天堂资源www在线中文 | 永久免费精品影视网站 | 91理论片午午伦夜理片久久 | 激情五月综合色婷婷一区二区 | 黑人爱爱视频 | 国产乱人乱精一区二视频国产精品 | 九九爱精品| 亚洲尤物视频 | 少妇无套高潮一二三区 | 中文字幕在线国产 | 大桥未久av在线 | 欧美精品video | 成人狠狠色综合 | aaaaa少妇高潮大片在按摩线 | 日本阿v免费观看视频 | 国产98色在线 | 精品国产精品网麻豆系列 | 2022久久国产露脸精品国产 | 国产精品无码一区二区在线 | 动漫av纯肉无码免费播放 | 国产精品人人爽人人做我的可爱 | 99热九九这里只有精品10 | 天堂久久天堂av色综合 | 开元在线观看视频国语 | 国产精品无码人妻一区二区在线 | 成人春色www在线 | 极品五月天 | 精品成人在线 | 动漫羞免费网站中文字幕 | 97国产精品自拍 | 美女无遮挡免费视频网站 | 一级特黄av | 日日摸夜夜添夜夜添特色大片 | 国产激情久久久久 | 免费国产在线视频 | 亚洲国产日韩欧美一区二区三区 | 天海翼一二三区 | 国内最真实的xxxx人伦 | 午夜在线观看免费视频 | 瑟瑟在线观看 | 99精品视频国产 | 草草视频在线播放 | 成人免费福利视频 | 久久久久97国产 | 91日日日| 亚洲日本va午夜中文字幕一区 | 精品国产一二三产品价格 | 成人美女黄网站色大色费全看在线观看 | 久久九九免费视频 | 国产喷水福利在线视频 | 免费一区二区三区 | 欧美三级在线播放 | 国产在线精品二区 | 黄网在线 | 亚洲a毛片| 影音先锋中文字幕人妻 | 色欧美综合 | 欧美成人无尺码免费视频软件 | 欧美黄色精品 | 中文字幕ipx696希岛あい | 久久精品国产精品国产一区 | www.youjizz.com偷拍 | 天天摸天天碰 | 色狠狠av北条麻妃 | 亚洲乱妇熟女爽到高潮的片 | 亚洲一区二区女搞男 | 亚洲v视频| 美女内射视频www网站午夜 | 国产无遮挡免费观看视频网站 | 欧美国产日产一区二区 | 美女视频黄频a免费 | 中文字幕一级 | 亚洲a∨精品一区二区三区 gv天堂gv无码男同在线观看 | 97人人艹| 午夜影院在线 | 国产精品初高中害羞小美女文 | 日韩视频一区二区 | 国产精品视频一区二区噜噜 | 国产精品色综合 | 国产精品后入内射日本在线观看 | 国产精品v欧美精品∨日韩 女邻居的大乳中文字幕 | 91视频你懂的 | 国产一区免费 | 国内精品久久久久久久影视 | 亚洲国产成人一区二区在线 | 国产乱码一二三区精品 | 一区二区三区av在线 | 在线观看一区二区三区视频 | www.亚洲色图 | 高跟肉丝丝袜呻吟啪啪网站av | 久久女女| 久久九九免费 | 国产中文字幕第一页 | 天天摸夜夜 | 一区二区在线免费观看视频 | 精品一区二区三区东京热 | 成人黄色在线网站 | 国模和精品嫩模私拍视频 | 黄色小网站在线观看 | 一级二级黄色大片 | 男女高潮又爽又黄又无遮挡 | 人妻人人做人碰人人添 | 三级黄色免费 | jizz免费视频 | 久久综合久久综合九色 | 成人精品网站在线观看 | 婷婷四房综合激情五月 | 性欧美激情 | 国产对白精品刺激二区国语 | 精品欧美一区二区久久久伦 | 国产免费拔擦拔擦8x高清在线人 | 国产精品裸体瑜伽视频 | 深夜福利免费观看 | 天堂8中文在线最新版在线 拍真实国产伦偷精品 | 黄色成人毛片 | 懂色av中文字幕一区二区三区 | 国产手机在线αⅴ片无码观看 | 欧美内射深插日本少妇 | 在线播放成人 | 国产无遮挡成人免费视频 | 免费一级做a爰片性视频 | 国产综合色在线视频区 | 色婷婷一区二区三区av免费看 | 女人爽到高潮潮喷18禁网站 | 欧美大尺度床戏做爰 | 欧美大肥婆bbbww欧出奶水 | 炕上如狼似虎的呻吟声 | 波多野结衣视频免费 | 日韩网站视频 | 国产精品区一区二区三区 | 91免费成人 | 艳妇荡女欲乱双飞两中年熟妇 | 朝鲜大乳女奶水奶水吃奶视频在线 | 欧美爱爱视频网站 | 日本按摩片色xxxx | 亚洲另类无码专区首页 | 成人少妇高潮流白浆 | 露脸啪啪清纯大学生美女 | 四虎成人精品无码永久在线 | 国产乱人伦偷精精品视频 | 日韩欧美中文字幕在线三区 | 精品白嫩初高中害羞小美女 | 国产伦精品一区三区视频 | 国产精品激情av久久久青桔 | 成人在线视频免费看 | 中文字幕免费高 | 国产无套乱子伦精彩是白视频 |