AWK基礎用法

AWK:

print

例子:給沒個/etc/passwd下的用戶都打招呼hello
答案:

awk '{print "hello:"$1}' /etc/passwd
內建變量
FS : 輸入分隔符
OFS: 輸出分隔符
RS : 行輸入分隔符
ORS: 行輸出分割符
NF : 字段數
NR : 行號數
FNR: 每個文件的行號數
ARGC: 參數個數
ARGV: 數組形式保存
printf
%c :顯示字符的ASCII碼
%d :顯示十進制整數
%e :科學計數法顯示
%f :顯示浮點數
%g :以科學計數法顯示浮點數
%s :顯示字符串
%v :無符號整數
%% :顯示%本身
修飾符:
%15s 行距離
-減號:左對齊
+加號:顯示數值正整號
PATTERN
BEGAIN:開始處理一次
END :結束后執行一次
控制語句和數組
if( ){ } else { } 語句
for( ; ; ) { } 語句
while( ) { } 語句
for( in ) { }語句
例子:顯示/etc/passwd文件中位于文件的第偶數行的用戶名;并顯示共有多少個這樣的用戶
答案:

awk -F: '{if (NR%2==0) {count++;print $1}} END {print "Total Users:"count" "}' /etc/passwd
例子:netstat -tan 打印tcp鏈接狀態的統計數
答案:

netstat -tan | awk '{if(NR>2)count[$NF]++}END{for(i in count)print i,count[i]}'
例子:統計/etc/fstab文件中每個文件系統類型出現的次數
答案:

awk '/^[^#]/{count[$3]++}END{for(i in count) print i,count[i]}' /etc/fstab
例子:統計/etc/fatab文件中每個單詞出現的次數
答案:

awk '{for(i=1;i<NF;i++){count[$i]++}}END{for(i in count) print i,count[i]}' /etc/fstab

原創文章,作者:z long,如若轉載,請注明出處:http://www.www58058.com/76717

(0)
z longz long
上一篇 2017-05-22 19:24
下一篇 2017-05-22 20:25

相關推薦

  • Windows 10 VS. Linux

    原文出處: Linux中國 – zpl1025   前陣子 Windows 10 好像占據了絕大部分頭條,甚至在一些Linux圈里也是一樣。最具代表性的是 betanews.com 的 Brian Fagioli 說 Windows 10 已經為 Linux 桌面系統敲響了喪鐘,Microsoft 如今宣布將為忠實的…

    系統運維 2015-03-24
  • 馬哥教育網絡班20期+第2周課程練習

    1、Linux上的文件管理類命令都有哪些,其常用的使用方法及其相關示例演示。   答:文件操作     ls 列出目錄下的文件名      ls -l /     touch 文件不存在時生成該文件      touch a.txt   &…

    Linux干貨 2016-06-23
  • Linux進程與計劃任務

    Linux進程與計劃任務 linux進程及作業管理 進程 內核的功用:進程管理、文件系統、網絡功能、內存管理、驅動程序、安全功能等特權操作模式切換(理想狀態):70%CPU時間用戶模式+30%CPU時間內核模式進程(Process):是計算機中的程序關于某數據集合上的一次運行活動,是系統進行資源分配和調度的存在生命周期的基本單位,是操作系統結構的基礎。在早期…

    Linux干貨 2016-09-23
  • Linux進程查看及管理(2)

    Linux進程查看及管理(2) CentOS5和6的啟動流程: Liunx中的啟動:kernel和rootfs(根文件系統) kernel:進程管理,內存管理,網絡管理功能,驅動程序,文件系統,安全功能(權限模型), rootfs:glibc(lib,lib64) 庫:函數集合,function(功能模塊)有其調用接口(頭文件是對函數功能或調用參數的功能進行…

    Linux干貨 2016-08-08
  • 一年直接在于春

    day01

    2018-03-26
  • 任務計劃和本地系統的默認郵件

    一、前言 二、本地mail的使用方法 三、at /batch 四、cron 五、小結   一、前言 linux 中執行任務計劃有三種命令:at ,batch ,cron.其中,at,batch 是一次性執行,而crontab,則是周期性執行; 作業執行完成后,會通過郵件通知給作業提交者;因此,以下就從郵件說起。 二、郵件服務 Centos ,默認會…

    Linux干貨 2015-05-13
欧美性久久久久