導航:首頁 > 操作系統 > linuxawkgrep

linuxawkgrep

發布時間:2023-03-19 12:49:33

① Unix & linux的文本處理工具 -- grep, sed & awk

當大家看到標題時腦中閃過的大概是鋪天蓋地, google出來的冗餘的各類使用介紹,老生常談希望能讓大家對這三個文本工具有新的理解。

grep不做過多的介紹, 列印出匹配的行, 著重點在於輸出結果並不對文本本身做修改。

有個關於grep的小故事, 從sed和grep能追溯到最初的unix行編輯器ed而grep的命名代表 g(全局)/re(正則表達式)/p(列印)正是ed中全局列印行匹配的語法. grep自身的劣勢在於無法實現多行匹配, 這時sed和awk相繼出現彌補了grep的不足。

在進入sed的相關討論之前,先就sed跟awk之間進行簡單的比較。

可使用指定的腳本文件對相應文本進行編輯。

sed -f 'script filename' or stdin

awk -f 'script filename' or stdin

默認敬飢慎全局匹配並且擁有自身的主輸入循環。

除去肢絕影響控制流的命令或語句(sed中: t,b; awk中continue,break等)默認對文本的每一讀取的行依次執行相應的命令或語句。

awk相較於文本編輯工具更像是一門語言,awk條件、循環、判斷語句有顯性的標識(if,while,for...);而sed只存在單一的判斷邏輯(參考b label,t label)。

取出upstream awk_test對應的配置塊:

Solution1:

Solution2:

相較之下Solution 2不需要復雜的判斷,只需通過定址來匹配並列印相應的文本;Solution 1更適合於進行多行匹配並替換。另一方面,Solution 1中sed通過創建多行空間模式並輸出,而awk通過修改記錄分隔符來實現多行匹配的不同。

awk擁有系統變數(FS,RS,OFS,ORS...)、內置函數、數組數據結構、傳參(-v var=value)、引用系統命令(通過system() getline() close()函數)等。

awk除去主輸入循環還存在BEGIN和END過程,用於某些在處理輸入之前或者處理輸入完成之後的操作。

sed也有過人之處,如果對sed的工作模式進行深入了解,會發現有一個叫做保持空間(hold space)的東西,下圖大體描述了sed的工作模式,並且闡述了模式空間(pattern space)跟保持空間(hold space)之間的聯系。模式空間跟保持空間中的內容可進行刪除,交換等。

sed的指令集都是單一的字母,並且有option可直接修改文件。而awk可能需要指定內置變數的值,或是通過輸出重定向保存為新的文件。

綜上所述:

grep適用於單行匹配列印的場景;

sed適用於多行模式的替換的場景;

awk適合更多的邏輯表達式並輸出的場景。

但三個命令都需要文本格式統一化的大前提,對於一個文本中的多種格式,可以亮敬先將同一種格式的內容整理到文件中,再將其他格式再分別整理到新的文件中。

統一文本格式固然重要,能准確匹配意圖的正則表達式也必不可少,這也是大家頭疼的部分。如若有機會,我會再跟大家介紹文本匹配中磨人的小妖精——正則表達式。它在不同的命令中、語言中支持不同的標准,更易於與Unix-like系統的file globbing混淆,常常讓人咬牙切齒,欲罷不能。

② linux awk命令--如何引入外部變數

用shell命令刪除目錄下文件,但是排除某些特殊文件,第一時間無腦從谷歌獲取。

丟到腳本執行發現,並沒有刪除,原來rm後面命令返回結果有問題,必須橋升事當前目錄才行,腳本脫離當前目錄就懵逼。那想辦法改吧。

既然【 ls *.txt | grep -v test.txt 】返回的的是文件名稱,那拼上目錄就完事了。
使頌核用awk拼接目錄和文件:

由於【ls -l 】返回的第一行【total 272】需過濾:

過濾第一行統計信息:

awk內置了一些變數可以拼接,還有常量也可以拼接,此處不表,重點提及awk作用域外的變數引用,有一下三種方式:

格式如:awk 『{action}』 變數名=變數值 ,這樣傳入變數,可以在action中獲得值。 注意:變數名與值放野消掘到』{action}』後面。
這種變數在:BEGIN的action不能獲得。

格式如:awk –v 變數名=變數值 [–v 變數2=值2 …] 'BEGIN{action}』 注意:用-v 傳入變數可以在3中類型的action 中都可以獲得到,但順序在 action前面。

只需要調用:awk內置變數 ENVIRON,就可以直接獲得環境變數。它是一個字典數組。環境變數名 就是它的鍵值。

③ linux awk命令詳解

awk命令是linux下的一個文件管理命令,通常是用於文本和數據進行處理的編程語言,awk命令主要有兩個功能,具體介紹如下:
1、awk命令可以在linux/unix下對文本和數據進行處理;
2、awk命令支持用戶自定義函數和動態正則表達式。
參考範例:
比如列印每一行的第二和第三個欄位,具體命令為:
[root@linuxcool~]#awk'{print$2,$3}'file
awk命令的具體語法格式為awk[參數][文件]。
參數:
-F指定輸入時用到的欄位分隔符
-v自定義變數
-f從腳本中讀取awk命令
-m對val值設置內在限制

以上就是的分享了,希望能夠幫助到大家。
本文章基於ThinkpadE15品牌、centos7系統撰寫的。

④ Linux入門系列——awk命令詳解

awk是一個強大的文本分析工具,與grep、sed相比,awk在對數據分析並生成報告時,顯得有很大的優勢。

awk有三個不同的版本:awk、nawk和gawk,在沒有做特殊說時的時候默認的就是gawk,gawk是awk的GNU版本。

其中command是真正的awk命令,-F表示域的分隔符,是個可選項。Filename是等待處理的文件

將所有的awk命令寫入到一個文件,並使用該文件有X許可權,然後awk命令解釋器作為腳本的首行,也就是說可以把腳本最開始的 #!/bin/bash 換成 #!/bin/awk

最後直接執行這個腳本文件就行了。

-f 指定要載入的awk腳本,是一個文件。Filename是等待處理的文件

awk的工作流程是這樣的:讀入一行後(最後面帶有」 」的),就按-F指定的分隔符來將該行劃分成N個區域,$0表示所有的區域,$1表示第一個域,$2表示第二個域,依此類推,$n表示第n個域。

總結:awk先執行BEGIN內的命令,然後再讀入文件中的行,接著就是按照指定的分隔符將該行分成N個區域,然後再來執行模式所對應的動作action。然後,再來讀入第二行。。再重復執行action,直到所有的行都處理完成。最後再執行END中的命令。

注意:' // '之間是支持正則表達式的,如果此處只有pattern,而沒有action,那麼awk默認會把匹配到的行列印出來。

awk中的print還可以使用C語言中的printf來替代。在輸出格式比較復雜的時候使用printf函數會比print函數要更直觀一些,如下:


還可以使用-v key=value來自定義變數。如下:

awk中的條件語句是從C中借鑒過來的

語法:if (condition) {then-body} else {else-body}

例如使用awk來統計某個目錄下的普通文件的大小,不包括子目錄的,並過濾掉目錄。

循環語句也和C中的一樣,支持while、do/while、for、continue、break等關鍵字。

break和continue常用於循環中;

在awk中,數組的下標可以是數字或字母。一般awk中的數組的作用是從記錄中收集信息,用於計算總和、統計單詞等。

在awk中要刪除一個元素的時候使用 delete array[index]

更多請參見awk官方文檔[http://www.gnu.org/software/gawk/manual/gawk.html]

⑤ linux里awk是做什麼的,請詳細說明

awk是一個強大的文本分析工具,相對於grep的查找,sed的編輯,awk在其對數據分析並生成報告時,顯得尤為強大。簡單來說awk就是把文件逐行的讀入,以空格為默認分隔符將每行切片,切開的部分再進行各種分析處理。
awk有三個不同的版本:awk、nawk和gawk,未作特別說明,一般指gawk,gawk是awk的GNU版本。
之所以叫awk是因為其取了三位創始人Alfred Aho,Peter Weinberger,和Brian Kernighan的Family Name
的首字元。
使用方法:
awk'{pattern+action}'{filenames}
盡管操作可能會很復雜,但語法總是這樣,其中pattern表示awk在數據中查找的內容,而action是在找到匹配內容時所執行的一系列命令。花括弧({})不需要在程序中始終出現,但它們用於根據特定的模式對一系列指令進行分組。pattern就是要表示的正則表達式,用斜杠括起來。
awk語言的最基本功能是在文件或者字元串中基於指定規則瀏覽和抽取信息,awk抽取信息後,才能進行其他文本操作。完整的awk腳本通常用來格式化文本文件中的信息。
通常,awk是以文件的一行為處理單位的。awk每接收文件的一行,然後執行相應的命令,來處理文本。
調用awk的三種方式
1、命令行方式
awk[-F field-separator]'commands'input-file(s)
其中,commands是真正awk命令,[-F域分隔符]是可選的。input-file(s)是待處理的文件。
在awk中,文件的每一行中,由域分隔符分開的每一項稱為一個域。通常,在不指名-F域分隔符的情況下,默認的域分隔符是空格。
2、shell腳本方式
將所有的awk命令插入一個文件,並使awk程序可執行,然後awk命令解釋器作為腳本的首行,一遍通過鍵入腳本名稱來調用。
相當於shell腳本首行的:#!/bin/sh
可以換成:#!/bin/awk
3、將所有的awk命令插入一個單獨文件,然後調用:
awk-f awk-script-file input-file(s)
其中,-f選項載入awk-script-file中的awk腳本,input-file(s)跟上面的是一樣的。

⑥ linux awk命令怎麼用

linux awk命令怎麼用? awk:用於一行中分成數個「欄位」來處理。適合處理 小型資料。
執行模式:awk '條件型別1{動作1} 條件型別2{動作2} ...' filename
# last | awk '{print $1 "\t" $3}' <== 檢視登入者的資料,只顯示登入罩滾名並悶高和ip地址,並以[tab]隔開
awk 的內建變數
變數名稱 代表的含義
NF 每一行($0)擁有的欄位總數
NR 當前 awk 所處理的是 「第幾行」 資料
FS 當前分隔符,預設空格鍵
awk 的邏輯運運算元
運算單元 代表含義
> 大於
< 小於
>= 大於或等於
<= 小於或等於
== 等於
!= 不等於
範例:
cat /etc/passwd | awk '{FS=":"} $3 < 10 {print $1 "\t" $3}' <== 檔案/etc/passwd是以":"分隔的,檢視第三欄小於10的資料,並且只顯示帳號與第三欄
以上是我對awk的總結,希望對你有幫助,是我寫的哦,不是復制的。
linux 怎麼用awk命令 取出一段文字
awk '/<DIMENSION NAME="CCCCCC" SRC_TYPE="INTERNAL">/,/<DIMENSIONS>/ {print $0}' filename
Linux awk命令問題

head -n 3 /etc/passwd|awk -F ':' '$1="root"' 這里$1="root",表示將第1列的值賦值為root,因此上述命令表示:將/etc/passwd中前3行按照『:』分隔後第一列以root顯示,並列印其他列。

awk -F ':' '$3=="0"' /etc/passwd
這里$3=="0",表示將第三列與"0」進行匹配,以什麼方式匹配呢?以『:』分隔後的第三列進行匹配並列印。這里是匹配列印,所以列印的是匹配的那一行(被:分隔後),而不是顯示分隔後的列。

所以,區別在於一個是分隔後賦值列印分隔後列的值,一個是按照指定分隔方式進行匹配找到匹配的行,列印的是匹配的那一行。
linux的awk命令問題
一行里 第一個元素和第三個元素
linux下 awk命令問題
1、其實這樣基本滿足要求。但是確實不夠嚴謹。試試是否可以。
ps -le | grep sshd | awk '{print $4}'
2、對ps 命令用的最多的是ps -ef 對el 我不是很了解具體輸出什麼。當然,是不是你壓根就沒有這個sshd服務啟動。這些都先驗證一下。一步一步的輸出,看看問題出現在管道的哪一個環節。
3、或者這個 $14==sshd 欄位你指定錯了。 awk $指定的變數是從1 開始的。$0是整個行。這個不要忘記了哦。
如果上述1第一種情況可以輸出,第二種2不可以話,可能就驗證了我的假設。你欄位拆解出現錯誤。把$14 這個欄位好好看看。
linux awk命令基礎 怎麼在終端寫
awk一般用於文字處理,通常用作資料提取。終端書寫demo
awk '{print }' info.txt
以上是輸出文字檔案info.txt的所有內容,請使用實際檔案進行替換info.txt
ps -ef|grep process_name | awk -F"" '{print $2}'
以上是查詢process_name程序的ID資訊,把查詢資訊作為引數傳給awk進行過濾,請使用實際程序名替換process_name。
awk命令在 linux和aix下的區別
三種呼叫awk的命令方式:
1.命令列方式:awk [-F field-separator] 'mands' input-file(s)
-F選項可選:awk -F: 'mands' input-file
2.將所有絕尺的awk命令插入一個檔案,並是awk程式可執行,然後用awk命令直譯器作為指令碼的首行,
以便通過鍵入指令碼名稱來呼叫它。
3.將所有的awk命令插入一個單獨檔案,然後呼叫:
awk -f awk-script-file input-files(s)
-f:指明在檔案awk-script-file中的awk指令碼
input-file(s):使用awk進行瀏覽的檔名。

awk指令碼
在命令中呼叫awk時,awk指令碼由各種操作和模式組成。
-F,awk每次讀一條記錄或一行,並使用指定的分隔符分分隔指定域;
所沒分隔符,則使用空格。

任何awk語句都由模式和動作組成
模式,決定動作語句何時觸發及觸發事件,若忽略模式部分,動作將時刻保持執行狀態。
模式,可是任何條件語句,或符合語句,或正則表示式。
BEGIN:設定計數,列印頭,在任何文字瀏覽動作之前;
END:用來在awk完成檔案瀏覽動作後列印輸出檔案總數和結尾狀態標志。

動作,在{}內指定;大多用來列印;裡面可包含:if,looping,迴圈推出結構;
若不指明採取動作,awk將列印所有瀏覽出來的記錄。
如何在Linux中使用awk命令
awk例項
1、cat /etc/passwd|awk -F: '{print $1}'
2、linux的awk一般都是gawk,/bin/awk -> gawk
3、awk 『/abc/』 file.txt 顯示檔案中包含abc行。類似grep abc a.txt
4、awk 『{print NR,NF,$1,$NF,}』 file.txt按空格分隔列,顯示當前記錄號、域數和每一行的第一列和最後一列。
-F引數可以設定分割引數,例如按:分割
awk -F: 『{print $1}』 /etc/passwd
或者cat file|awk -F 「|」 『{print $1}』
5、awk程式語言
cat v.txt|awk 『{print length($1)}』
6、awk中使用NR和FNR,一般在awk處理多個檔案時,NR==FNR才有意義
NF 當前記錄中的欄位數。
NR 當前記錄數。
FNR同NR,但相對於當前檔案。
awk 『{print NR,FNR}』 test.txt test2.txt
awk 『{if(NR==FNR){a[FNR]=$1;}else{print $1,a[FNR]}}』 b.txt a.txt
7、列印奇數行與偶數行
awk 『NR%2』 test.txt
awk 『!(NR%2)』 test.txt
8、殺死tomcat的s.sh指令碼
#!/bin/sh
ps -ef| grep tomcat |grep -v grep | awk 『{print $2}』 |xargs kill -9
9、列印前7列
cat a.txt|awk 『{NF=7}1』 >> b.txt
tail -f aess.log|awk 『NF=7′ OFS=』\t』 >> b.txt
cut -d」,」 -f3-6 urfile
LINUX系統怎麼使用awk命令實現下述操作
cat file|awk -F"name=" '{print $2}'|awk -F\" '{print $1}'
試試看,第二個」的轉義,我沒測試,可以自己調下

⑦ Linux裡面sed和awk命令哪個重要

你好很高興回答您的問題:

  1. 既然接觸到了三劍客的sed和awk,對Linux應該是有些認知了吧.下面基於這個給您介紹下.

  2. Linux的秘籍三劍客 grep,sed,awk是Linux命令,甚至是shell編程部分的核心技術.

  3. 掌握與數量可以加速處理文本速度.

    1. grep擅長過濾與正則

    2. sed擅長替換與增刪改查

    3. awk擅長統計計算與取行取列

  4. 快收下下面的寶典修煉吧.

⑧ linux 三劍客(awk、sed、grep)

https://www.runoob.com/linux/linux-comm-awk.html

可以根據文件指定分隔符,像處理表格一樣處理文本或序列。通常來處理欄位,並基於欄位進行過濾,或進行模式匹配。

語法

常用的內建變數
NF :記錄的欄位數
NR :記錄的行號
OFS :輸出欄位分隔符,默認值與輸入欄位分隔符一致。
ORS :輸出記錄分隔符(默認值是一個換行符)
$n :當前記錄的第n個欄位,欄位間由FS分隔
$0 :完整的輸入記錄
ARGV :包含命令行參數的數組
ARGC :命令行參數的數目

基本用法

awk 腳本
關於 awk 腳本,我們需要注意兩個關鍵詞 BEGIN 和 END。

BEGIN{ 這裡面放的是執行前的語句 }
END {這裡面放的是處理完所有的行後要執行的語句 }
{這裡面放的是處理每一行時要執行的語句

以上的應用案例基本包括了常用的awk 的常用用法,更復雜的文本處理則可以通過awk 腳本完成。

https://www.runoob.com/linux/linux-comm-sed.html
與awk 相比,sed在處理文本的行具有更好的效率。

基本語法

參數說明

sed 文件處理命令
包括增加、刪除、列印、替換行的內容

應用案例

以上的案例表明,sed 的一些操作可以放在行的末尾,或者放在模式匹配的末尾,或者在大括弧內以分號分隔,或者通過-e 命令,實現多點編輯。

https://www.runoob.com/linux/linux-comm-grep.html

grep 查找文件里符合條件的字元串。

語法

應用案例

grep 除了可以查找單個文件中匹配的模式,也可以在目錄中包含特定字元的文件查找匹配模式的行。

⑨ Linux||正則表達式及grep命令

以下內容首發自公眾號「小汪Waud」。

本期介紹在Linux環境下的正則表達式及grep命令。

正則表達式(Regular Expression)是對字元串操作的一種邏輯公式,就是用事先定義好的一些特定字元及這些字元的特定組合,組成一個「規則字元串」,這個字元串用來表達對字元串的一種過濾邏輯。

正則表達式基本上是一種表示法,只要程序支持這種表示法,該程序就可以用來作為正則表達式的字元串處理之用。如vi、grep、awk、sed等程序支持正則表達式,所以可以使用正則表達式的特殊字元來進行字元串的處理。但例如cp、ls等命令並不支持正則表達式,所以只能用自己的通配符。

正則表達式依照 不同的嚴謹度 分為:基礎正則表達式和擴展正則表達式。

注意!

grep是一種強大的文本搜索工具,可以使用 正則表達式匹配模式 查找文件里符合條件的字元串,並列印出來。

有點類似於WORD里的查找功能。

grep支持三種正則表達式語法:Basic、Extended和perl兼容。 如果沒有提供正則表達式類型,grep將搜索模式解釋為基本的正則表達式。要將模式解釋為擴展正則表達式,請使用-E。

查看grep的幫助文檔,如下

基本用法

grep [OPTION]... PATTERN [FILE]...

高級用法

grep [-A] [-B] [--color=auto] "查找字元" [模式] [文件]

常用參數

首先通過cat命令查看samples.txt的內容,如下圖

如果想檢索以K為行首的行,通過以下命令即可得到

如果想檢索以Z為行尾的行,通過以下命令即可得到

如果想檢索三個字元其中前面為K,後面為D中間字元,為任意字元,通過以下命令即可得到

參考資料

https://www.runoob.com/linux/linux-comm-grep.html

https://www.bilibili.com/video/BV1Yy4y117SX?p=12

⑩ linux三劍客的基本使用——grep、sed、awk

grep、sed、awk是linux功能非常強大的三個命令,grep是查找過濾文本,sed是對文本進行編輯替換,awk是對文本進行分析報告。

最簡單的理解就是找什麼東西用grep,想修改什麼內容用sed,想格式化內容用awk。

創建一個文件名為grep_text.txt的文件,並放入內容:
SillyMadman is both a madman and a fool.
Everyone agrees with this sentence.

我要查找在grep_text.txt文件里有Silly的行
命令是: grep Silly grep_text.txt
會返回內容:SillyMadman is both a madman and a fool.

也可以帶以下參數,這些我認為可能容易用到的參數,其它的參數需要另行查找
文檔,比如可以使用正則進行匹配。

內容相關的
-B, --before context=NUM顯示所在行之前的行數
-A, --after context=NUM顯示所在行之後的行數
-C, --context=NUM列印輸出上下文的行數

過濾內容相關的參數:
-i, --忽略大小寫區分
-w,--匹配查找的整個單詞
-x,--匹配查找的整行文本
-v, --過濾掉匹配的內容

輸出內容相關的參數
-n, --行號列印帶有輸出行的行號

比如,我要查找在grep_text.txt文件里不區分大小寫查找sillymadman,並顯示行號和匹配文本的下一行,那麼我可以用以下命令查找
grep sillymadman grep_text.txt -i -n -A1
內容返回為
1:SillyMadman is both a madman and a fool.
2-Everyone agrees with this sentence.

總體而言grep的使用方式就是
grep [參數...](查找的內容) (文件名)

grep也經常搭配管道符號"|"使用,比如我要查詢某程序的進程,並去掉查找進程本身,那麼命令為
ps -ef | grep program_name | grep -v grep

再創建一個文件名為sed_text.txt的文件,並放入內容:
SillyMadman is both a madman and a fool.
Everyone agrees with this sentence.

我想要在第一行下面添加一句:woshishazi
命令是:sed '1a\woshishazi' sed_text.txt
返回內容為:
SillyMadman is both a madman and a fool.
woshishazi
Everyone agrees with this sentence.

但是以上這個命令不會修改原文件,如果需要,需要加上-i
sed -i '1a\woshishazi' sed_text.txt

上面a是代表append,從指定行後面新的一行添加數據,還有其他操作

操作有以下這些
a :從下面一行新增
i :從上面一行插入,
d :刪除
c :整行替換
p :列印
s :對指定內容進行替換

下面稍微舉下例:
a: sed '1a\woshishazi' sed_text.txt 從第一行後面添加
i: sed '1i\woshishazi' sed_text.txt 從第一行前面插入
d: sed '1d' sed_text.txt 刪除第一行
c: sed '1c\woshishazi' sed_text.txt 替換第一行內容為woshishazi
p: sed -n '1p' sed_text.txt 列印第一行,一般搭配-n使用,其他內容就不會再展示
s:這個相對復雜一點需要詳細說明一下
sed的參數為 '[行]s/要被替換的內容/新的內容/g'
行是一個可選項,可以選擇具體的行進行替換
g代表替換所有匹配到的內容,也可以改為數字,表示第幾次匹配到時進行替換
sed 's\SillyMadman\shafengzi\g' sed_text.txt ,將所有SillyMadman替換為shafengzi
輸出結果為:
shafengzi is both a madman and a fool.
Everyone agrees with this sentence.

最後再創建一個文件名為awk_text.txt的文件,並放入內容:
1 a
2 b
3 c
4 d
5 f
以空白符作為分隔符這個文本相當於每一行有兩個欄位。

那麼列印第一個欄位時 awk '{print 0的話,則代表列印所有欄位

awk默認以空白符作為分隔符,也可以指定分割符通過-F
awk -F: '{print $1}' awk_text.txt,以「:」作為作為分隔符
那麼返回內容就為
1 a
2 b
3 c
4 d
5 f
相當於只有一列或者說一個欄位

然後還可以對前面加上一個正則對行進行匹配內容
awk '/a/{print 2 ~ /a/){print $1}' awk_text.txt
返回內容為
1

閱讀全文

與linuxawkgrep相關的資料

熱點內容
社保加密狗廠商 瀏覽:212
php編譯運行說法 瀏覽:953
程序員說喂 瀏覽:238
抖音直播雲伺服器 瀏覽:627
一加7pro文件夾data 瀏覽:424
程序員淋雨 瀏覽:947
python輸出數字序列中的空格 瀏覽:78
怎麼將pdf文件大小 瀏覽:734
氧原子相對分子量演算法 瀏覽:988
加密機為什麼是安全的 瀏覽:451
單片機拼音輸入法 瀏覽:789
蘋果筆記本t2加密晶元怎麼打開 瀏覽:796
安卓如何把手機投屏至電視 瀏覽:739
方舟編譯器現在可提速哪些軟體 瀏覽:60
微信加密為什麼是黑屏 瀏覽:473
android去電狀態 瀏覽:604
蘋果13如何加密視頻 瀏覽:815
linuxweblogic緩存 瀏覽:69
雲伺服器不同地域 瀏覽:946
python鬧鍾怎麼打 瀏覽:686