亚洲Aⅴ无码Av红楼在线观看_国产午夜福利涩爱AⅤ_国产sm调教一区二区三区_精品人妻一区二区三区不卡毛片

始創(chuàng)于2000年 股票代碼:831685
咨詢熱線:0371-60135900 注冊有禮 登錄
  • 掛牌上市企業(yè)
  • 60秒人工響應(yīng)
  • 99.99%連通率
  • 7*24h人工
  • 故障100倍補(bǔ)償
全部產(chǎn)品
您的位置: 網(wǎng)站首頁 > 幫助中心>文章內(nèi)容

介紹UNIX高手的十大習(xí)慣 (2)

發(fā)布時(shí)間:  2012/8/11 17:35:18

法無法為您提供實(shí)際匹配實(shí)例數(shù)量 的真實(shí)計(jì)數(shù)。歸根結(jié)底,若要對實(shí)例計(jì)數(shù),您還是要使用 wc 來計(jì)數(shù)。首先,使用 -o 選項(xiàng)(如果您的版本支持它的話)來運(yùn)行 grep 命令。此選項(xiàng)僅 輸出匹配的模式,每行一個(gè)模式,而不輸出行本身。但是您不能將它與 -c 選項(xiàng)結(jié)合使用,因此要使用 wc -l 來對行計(jì)數(shù),如以下示例所示:
  清單 18. 好習(xí)慣 8 的示例:使用 grep 對模式實(shí)例計(jì)數(shù)
  ~ $ grep -o and tmp/a/longfile.txt | wc -l
  3402
  ~ $
  在此例中,調(diào)用 wc 要比第二次調(diào)用 grep 并插入一個(gè)虛擬模式(例如 grep -c)來對行進(jìn)行匹配和計(jì)數(shù)稍快一點(diǎn)。
  匹配輸出中的某些字段,而不只是對行進(jìn)行匹配
  當(dāng)您只希望匹配輸出行中特定字段 中的模式時(shí),諸如 awk 等工具要優(yōu)于 grep。
  下面經(jīng)過簡化的示例演示了如何僅列出 12 月修改過的文件。
  清單 19. 壞習(xí)慣 9 的示例:使用 grep 來查找特定字段中的模式
  ~/tmp $ ls -l /tmp/a/b/c | grep Dec
  -rw-r--r-- 7 joe joe 12043 Jan 27 20:36 December_Report.pdf
  -rw-r--r-- 1 root root 238 Dec 03 08:19 README
  -rw-r--r-- 3 joe joe 5096 Dec 14 14:26 archive.tar
  ~/tmp $
  在此示例中,grep 對行進(jìn)行篩選,并輸出其修改日期和名稱中帶 Dec 的所有文件。因此,諸如 December_Report.pdf 等文件是匹配的,即使它自從一月份以來還未修改過。這可能不是您希望的結(jié)果。為了匹配特定字段中的模式,最好使用 awk,其中的一個(gè)關(guān)系運(yùn)算符對確切的字段進(jìn)行匹配,如以下示例所示:
  清單 20. 好習(xí)慣 9 的示例:使用 awk 來查找特定字段中的模式
  ~/tmp $ ls -l | awk ''$6 == "Dec"''
  -rw-r--r-- 3 joe joe 5096 Dec 14 14:26 archive.tar
  -rw-r--r-- 1 root root 238 Dec 03 08:19 README
  ~/tmp $
  停止對 cat 使用管道
  grep 的一個(gè)常見的基本用法錯(cuò)誤是通過管道將 cat 的輸出發(fā)送到 grep 以搜索單個(gè)文件的內(nèi)容。這絕對是不必要的,純粹是浪費(fèi)時(shí)間,因?yàn)橹T如 grep 這樣的工具接受文件名作為參數(shù)。您根本不需要在這種情況下使用 cat,如以下示例所示:
  清單 21. 好習(xí)慣和壞習(xí)慣 10 的示例:使用帶和不帶 cat 的 grep
  ~ $ time cat tmp/a/longfile.txt | grep and
  2811
  real 0m0.015s
  user 0m0.003s
  sys 0m0.013s
  ~ $ time grep and tmp/a/longfile.txt
  2811
  real 0m0.010s
  user 0m0.006s
  sys 0m0.004s
  ~ $
  此錯(cuò)誤存在于許多工具中。由于大多數(shù)工具都接受使用連字符 (-) 的標(biāo)準(zhǔn)輸入作為一個(gè)參數(shù),因此即使使用 cat 來分散 stdin 中的多個(gè)文件,參數(shù)也通常是無效的。僅當(dāng)您使用帶多個(gè)篩選選項(xiàng)之一的 cat 時(shí),才真正有必要在管道前首先執(zhí)行連接。
  結(jié)束語:養(yǎng)成好習(xí)慣
  最好檢查一下您的命令行習(xí)慣中的任何不良的使用模式。不良的使用模式會(huì)降低您的速度,并且通常會(huì)導(dǎo)致意外錯(cuò)誤。本文介紹了 10 個(gè)新習(xí)慣,它們可以幫助您擺脫許多最常見的使用錯(cuò)誤。養(yǎng)成這些好習(xí)慣是加強(qiáng)您的 UNIX 命令行技能的積極步驟。

億恩科技地址(ADD):鄭州市黃河路129號天一大廈608室 郵編(ZIP):450008 傳真(FAX):0371-60123888
   聯(lián)系:億恩小凡
   QQ:89317007
   電話:0371-63322206


本文出自:億恩科技【www.allwellnessguide.com】

服務(wù)器租用/服務(wù)器托管中國五強(qiáng)!虛擬主機(jī)域名注冊頂級提供商!15年品質(zhì)保障!--億恩科技[ENKJ.COM]

  • 您可能在找
  • 億恩北京公司:
  • 經(jīng)營性ICP/ISP證:京B2-20150015
  • 億恩鄭州公司:
  • 經(jīng)營性ICP/ISP/IDC證:豫B1.B2-20060070
  • 億恩南昌公司:
  • 經(jīng)營性ICP/ISP證:贛B2-20080012
  • 服務(wù)器/云主機(jī) 24小時(shí)售后服務(wù)電話:0371-60135900
  • 虛擬主機(jī)/智能建站 24小時(shí)售后服務(wù)電話:0371-60135900
  • 專注服務(wù)器托管17年
    掃掃關(guān)注-微信公眾號
    0371-60135900
    Copyright© 1999-2019 ENKJ All Rights Reserved 億恩科技 版權(quán)所有  地址:鄭州市高新區(qū)翠竹街1號總部企業(yè)基地億恩大廈  法律顧問:河南亞太人律師事務(wù)所郝建鋒、杜慧月律師   京公網(wǎng)安備41019702002023號
      0
     
     
     
     

    0371-60135900
    7*24小時(shí)客服服務(wù)熱線