1. 程式人生 > >awk 統計各種檔案的數量 以及陣列

awk 統計各種檔案的數量 以及陣列

awk中的陣列其實更像java中的map和python中的字典,其下標可以為字串(key)

可以用陣列這樣的特性統計某一個目錄下各種檔案的個數,或者統計一個文件中某個關鍵詞或者所有詞出現的字數;

[[email protected] ~]# ls -l |awk '{n=split($9,fs,".");if(n>1)a[fs[n]]++; else a["other"]++;}END{for( item in a) {print item,":",a[item] }}'
java : 1
log : 17
other : 18
pig : 2
syslog : 1
gz : 1
class : 1
awk : 1
txt : 15
sh : 2
cfg : 1
py : 1

從以上也可以看出如果引用一個不存在的下標(或者key),awk 並不會報錯,這點和java和python都是不一樣的,但是和shell中的陣列如出一轍,看先shell下的陣列相同的特性

[[email protected] ~]# a=(wei hong rao is:)
[[email protected] ~]# a[7]="stupy"
[[email protected] ~]# echo ${a[*]}
wei hong rao is: stupy

其實不存在下標為7的元素,但是同樣可以賦值成功,引用的時候同樣是7,而不是順序往下計算,如下

[[email protected] ~]# echo ${a[3]}
is:
[[email protected] ~]# echo ${a[5]}

[[email protected]

~]# echo ${a[6]}

[[email protected] ~]# echo ${a[7]}
stupy


相關推薦

awk 統計各種檔案數量 以及陣列

awk中的陣列其實更像java中的map和python中的字典,其下標可以為字串(key) 可以用陣列這樣的特性統計某一個目錄下各種檔案的個數,或者統計一個文件中某個關鍵詞或者所有詞出現的字數; [[email protected] ~]# ls -l |awk

統計日誌檔案中訪問數量,Spark中加強版WordCount

  寫在前面 學習Scala和Spark基本語法比較枯燥無味,搞搞簡單的實際運用可以有效的加深你對基本知識點的記憶,前面我們完成了最基本的WordCount功能的http://blog.csdn.net/whzhaochao/article/details/72358215,這篇主

【Linux】Linux統計資料夾、檔案數量的命令

# 檢視當前目錄下的檔案數量(不包含子目錄中的檔案) ls -l|grep "^-"| wc -l # 檢視當前目錄下的檔案數量(包含子目錄中的檔案) 注意:R,代表子目錄 ls -lR|grep "^-"| wc -l # 檢視當前目錄下的資料夾目錄個數(不包含

shell指令碼 統計目錄下檔案數量

1、 統計當前資料夾下檔案的個數   ls -l |grep "^-"|wc -l 2、 統計當前資料夾下目錄的個數   ls -l |grep "^d"|wc -l 3、統計當前資料夾下檔案的個數,包括子資料夾裡的    ls -lR|grep "^-"|wc -

awk統計目錄下最大的檔案

首先簡單介紹一下,awk如何使用外部變數: awk中使用shell中的變數 一: "'$var'" 這種寫法大家無需改變用'括起awk程式的習慣,是老外常用的寫法.如: var="test" awk 'BEGIN{print "'$var'"}' 這種寫法其實際是雙括號變為

linux 統計目錄下所有檔案數量

檢視統計當前目錄下檔案的個數,包括子目錄裡的。   ls -lR| grep "^-" | wc -l[喝小酒的網摘]http://blog.hehehehehe.cn/a/12311.htm Linux下檢視某個目錄下的檔案、或檔案夾個數用到3個命令:ls列目錄、用gr

linux find下如何統計一個目錄下的檔案個數以及程式碼總行數的命令

知道指定字尾名的檔案總個數命令:  find . -name "*.html" | wc -l  知道一個目錄下程式碼總行數以及單個檔案行數:  find . -name "*.html"

統計一個目錄下各類檔案數量

最近筆者在研究tomcat底層架構,肯定要扒一扒tomcat原始碼,筆者希望知道工作量有多大,也就是統計一下tomcat原始碼中檔案有多少。筆者首先是個比較懶得人(不懶也不會幹IT),所以不可能手動的去統計,也不會自己寫程式碼去統計,然後在網上找了一個java版

linux下如何統計一個目錄下的檔案個數以及程式碼總行數的命令

知道指定字尾名的檔案總個數命令: find . -name "*.cpp" | wc -l 知道一個目錄下程式碼總行數以及單個檔案行數: find . -name "*.h" | xargs wc -l linux統計資料夾中檔案數目第一種方法:ls -l|grep “^-”|wc -lls -l 長列表

Python 統計某一資料夾下檔案數量

#統計資料夾下檔案的數目 import os DIR = '/tmp' #要統計的資料夾 print len([name for name in os.listdir(DIR) if os.path

爬蟲程式提取資訊(統計符合條件的檔案數量

var URL = "http://www.xinhuanet.com", url = URL, total = 0, count = 0, x = 0, num = 0; var sum_png = 0, sum_jpg = 0, sum_gif = 0, sum_jpeg

Notification的使用以及Intent開啟各種檔案

一:Notification的使用 使用步驟: 流程模組: 第一步: 建立一個通知欄的Builder構造類 (Create a Notification Builder) 第二步: 定義通知欄的Action (Define the N

反射Reflect基礎 今天主要在練習調用 Class的各種方法,以及getField() getMethod()方法.

class對象 scl struct rim 類型 地址 是否 .class 變量 反射,動態調用類,方法,對象. 三種方法調用類的對象.Class c1=Person.class/Class c2=(Person)p.getclass/Class c3=Class.for

linux中查看http各種狀態數量

並發 sed lan 應用 tool 一個 部署 listen 發的 轉自: http://www.cnblogs.com/wayne173/p/5652043.html 我們的網站部署在linux的服務器上,特別是web服務器,我們可能有時候做為運維人員,肯定是要查看網站

awk統計文件大小

功能 sum blog style 空間 ack 文件大小 post $1   在Linux系統中,經常會遇到某個目錄下文件很多,要統計這些文件的空間大小。可以采用awk來實現。如下是實現這個功能的例子。 vim sum.sh #!/bin/bash# sum.shcd

乾頤堂軍哥HCIE9-解決BGP路由黑洞、聚合的各種參數以及RR基礎

blog none 全部 aso 數據 gre let 產生 參數 本技術文章討論BGP的路由黑洞解決方案、BGP聚合,即減少路由條目數的技術1.BGP路由黑洞1.1 解決路由黑洞問題1某些AS內的設備沒有運行BGP(R3),那麽它會缺少路由(2.2.2.2/6.6.6.6

Linux(CentOS)下目錄檔案管理以及檔案文件系統打包壓縮

文件目錄常用命令 解壓縮 打包 一、目錄檔案的管理1、操作目錄的常用命令:(1) 絕對路徑與相對路徑: 絕對路徑都是從根目錄開始寫法為: /usr/local/java ("/" 為根目錄,也是目錄的入口) 相對路徑就是相對於當前這個路徑的路徑,不是

awk , 統計secure.log中 每個破解你密碼的ip的出現次數|access.log 中 每個ip地址出現的次數

root sha 阿爾巴尼亞 lsp layer 關閉 AS 越南 反饋 統計secure.log中 每個破解你密碼的ip的出現次數 [root@oldboyedu-sh01-lnb files]# awk ‘/Failed password/{h[$(NF-3)]++}

如何利用Python網絡爬蟲抓取微信好友數量以及微信好友的男女比例

zha 成功 函數 通訊 好友列表 是否 ID 爬蟲 實現 前幾天給大家分享了利用Python網絡爬蟲抓取微信朋友圈的動態(上)和利用Python網絡爬蟲爬取微信朋友圈動態——附代碼(下),並且對抓取到的數據進行了Python詞雲和wordart可視化,感興趣的夥伴可以戳這

tp5基於js折線圖插件統計會員註冊數量

str js代碼 col 功能 i++ term unix process port 樣式比較簡單 功能實現了 和大家共享 這個地址裏面有好多插件可以用 圓柱 折線 等等 大家可以去參考 開發https://bbs.hcharts.cn/forum.php 上代碼(第一版