{"id":5412,"date":"2020-07-30T13:01:46","date_gmt":"2020-07-30T05:01:46","guid":{"rendered":"http:\/\/39.97.231.10\/?p=5412"},"modified":"2020-07-30T13:01:46","modified_gmt":"2020-07-30T05:01:46","slug":"awk%e5%b8%b8%e7%94%a8%e6%96%b9%e6%b3%95","status":"publish","type":"post","link":"http:\/\/www.weijing.co\/?p=5412","title":{"rendered":"AWK\u5e38\u7528\u65b9\u6cd5"},"content":{"rendered":"<h1 class=\\\"postTitle\\\"><span style=\\\"font-size: 1.38462rem;\\\">1.1 \u4ecb\u7ecd<\/span><\/h1>\n<div class=\\\"postBody\\\">\n<div id=\\\"cnblogs_post_body\\\" class=\\\"blogpost-body\\\">\nawk\u5176\u540d\u79f0\u5f97\u81ea\u4e8e\u5b83\u7684\u521b\u59cb\u4eba\u00a0Alfred Aho\u00a0\u3001Peter Weinberger\u00a0\u548c\u00a0Brian Kernighan\u00a0\u59d3\u6c0f\u7684\u9996\u4e2a\u5b57\u6bcd\u3002\u5b9e\u9645\u4e0a\u00a0AWK\u00a0\u7684\u786e\u62e5\u6709\u81ea\u5df1\u7684\u8bed\u8a00\uff1a\u00a0AWK\u00a0\u7a0b\u5e8f\u8bbe\u8ba1\u8bed\u8a00\u00a0\uff0c\u00a0\u4e09\u4f4d\u521b\u5efa\u8005\u5df2\u5c06\u5b83\u6b63\u5f0f\u5b9a\u4e49\u4e3a\u201c\u6837\u5f0f\u626b\u63cf\u548c\u5904\u7406\u8bed\u8a00\u201d\u3002<br \/>\n\u5b83\u5141\u8bb8\u60a8\u521b\u5efa\u7b80\u77ed\u7684\u7a0b\u5e8f\uff0c\u8fd9\u4e9b\u7a0b\u5e8f\u8bfb\u53d6\u8f93\u5165\u6587\u4ef6\u3001\u4e3a\u6570\u636e\u6392\u5e8f\u3001\u5904\u7406\u6570\u636e\u3001\u5bf9\u8f93\u5165\u6267\u884c\u8ba1\u7b97\u4ee5\u53ca\u751f\u6210\u62a5\u8868\uff0c\u8fd8\u6709\u65e0\u6570\u5176\u4ed6\u7684\u529f\u80fd\u3002<br \/>\nawk\u00a0\u662f\u4e00\u79cd\u5f88\u68d2\u7684\u8bed\u8a00\uff0c\u5b83\u9002\u5408\u6587\u672c\u5904\u7406\u548c\u62a5\u8868\u751f\u6210\uff0c\u5176\u8bed\u6cd5\u8f83\u4e3a\u5e38\u89c1\uff0c\u501f\u9274\u4e86\u67d0\u4e9b\u8bed\u8a00\u7684\u4e00\u4e9b\u7cbe\u534e\uff0c\u5982\u00a0C\u00a0\u8bed\u8a00\u7b49\u3002\u5728\u00a0linux\u00a0\u7cfb\u7edf\u65e5\u5e38\u5904\u7406\u5de5\u4f5c\u4e2d\uff0c\u53d1\u6325\u5f88\u91cd\u8981\u7684\u4f5c\u7528\uff0c\u638c\u63e1\u4e86\u00a0awk\u5c06\u4f1a\u4f7f\u4f60\u7684\u5de5\u4f5c\u53d8\u7684\u9ad8\u5927\u4e0a\u3002<\/p>\n<h3 id=\\\"auto-id-1\\\"><i id=\\\"locator-auto-id-1\\\" class=\\\"lnh-article-header-locator\\\"><\/i>1.1.1 AWK\u539f\u7406<\/h3>\n<p>\u8fd9\u9700\u8981\u4e00\u4e2a\u4f8b\u5b50\u6765\u8bf4\u660e\uff0c\u4f60\u5c06\u4f1a\u89c1\u5230\/etc\/passwd\u00a0\u6587\u4ef6\u7684\u5185\u5bb9\u51fa\u73b0\u5728\u773c\u524d\u3002<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>awk \\'{print $0}\\' \/etc\/passwd\necho clsn|awk \\'{print \\\"hello,world\\\"}\\'\nawk \\'{ print \\\"clsn\\\" }\\' \/etc\/passwd<\/pre>\n<\/div>\n<p>\u73b0\u5728\uff0c\u89e3\u91ca\u00a0awk\u00a0\u505a\u4e86\u4e9b\u4ec0\u4e48\u3002\u8c03\u7528\u00a0awk\u65f6\uff0c\u6211\u4eec\u6307\u5b9a\/etc\/passwd\u00a0\u4f5c\u4e3a\u8f93\u5165\u6587\u4ef6\u3002\u6267\u884c\u00a0awk\u00a0\u65f6\uff0c\u5b83\u4f9d\u6b21\u5bf9\/etc\/passwd\u00a0\u4e2d\u7684\u6bcf\u4e00\u884c\u6267\u884c\u00a0print\u00a0\u547d\u4ee4\u3002\u6240\u6709\u8f93\u51fa\u90fd\u53d1\u9001\u5230\u00a0stdout\uff0c\u6240\u5f97\u5230\u7684\u7ed3\u679c\u4e0e\u6267\u884c\u00a0cat \/etc\/passwd\u00a0\u5b8c\u5168\u76f8\u540c\u3002\u73b0\u5728\uff0c\u89e3\u91ca{ print }\u4ee3\u7801\u5757\u3002\u5728\u00a0awk\u00a0\u4e2d\uff0c\u82b1\u62ec\u53f7\u7528\u4e8e\u5c06\u51e0\u5757\u4ee3\u7801\u7ec4\u5408\u5230\u4e00\u8d77\uff0c\u8fd9\u4e00\u70b9\u7c7b<br \/>\n\u4f3c\u4e8eC\u00a0\u8bed\u8a00\u3002\u5728\u4ee3\u7801\u5757\u4e2d\u53ea\u6709\u4e00\u6761\u00a0print\u00a0\u547d\u4ee4\u3002\u5728awk\u00a0\u4e2d\uff0c\u5982\u679c\u53ea\u51fa\u73b0\u00a0print\u00a0\u547d\u4ee4\uff0c\u90a3\u4e48\u5c06\u6253\u5370\u5f53\u524d\u884c\u7684\u5168\u90e8\u5185\u5bb9\u3002<br \/>\n\u518d\u6b21\u8bf4\u660e\uff0cawk\u00a0\u5bf9\u8f93\u5165\u6587\u4ef6\u4e2d\u7684\u6bcf\u4e00\u884c\u90fd\u6267\u884c\u8fd9\u4e2a\u811a\u672c\u3002<\/p>\n<p align=\\\"center\\\"><img src=\\\"https:\/\/images2017.cnblogs.com\/blog\/1190037\/201802\/1190037-20180205204316029-486521233.png\\\" alt=\\\"\\\" \/><\/p>\n<h2 id=\\\"auto-id-2\\\"><i id=\\\"locator-auto-id-2\\\" class=\\\"lnh-article-header-locator\\\"><\/i>1.2 AWK\u5e38\u7528\u901f\u67e5\u8868<\/h2>\n<h3 id=\\\"auto-id-3\\\"><i id=\\\"locator-auto-id-3\\\" class=\\\"lnh-article-header-locator\\\"><\/i>1.2.1 AWK\u8fd0\u7b97\u7b26<\/h3>\n<table border=\\\"1\\\" cellspacing=\\\"0\\\" cellpadding=\\\"0\\\">\n<tbody>\n<tr>\n<td valign=\\\"top\\\" width=\\\"36%\\\">\n<p align=\\\"center\\\"><strong>\u8fd0\u7b97\u7b26<\/strong><\/p>\n<\/td>\n<td valign=\\\"top\\\" width=\\\"63%\\\">\n<p align=\\\"center\\\"><strong>\u8bf4\u660e<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td colspan=\\\"2\\\" valign=\\\"top\\\" width=\\\"100%\\\"><em>\u8d4b\u503c\u8fd0\u7b97\u7b26<\/em><\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"36%\\\"><strong>= += -= *= \/= %= ^= **=<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"63%\\\">\u8d4b\u503c\u8bed\u53e5<\/td>\n<\/tr>\n<tr>\n<td colspan=\\\"2\\\" valign=\\\"top\\\" width=\\\"100%\\\"><em>\u903b\u8f91\u8fd0\u7b97\u7b26<\/em><\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"36%\\\"><strong>||<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"63%\\\">\u903b\u8f91\u6216<\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"36%\\\"><strong>&amp;&amp;<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"63%\\\">\u903b\u8f91\u4e0e<\/td>\n<\/tr>\n<tr>\n<td colspan=\\\"2\\\" valign=\\\"top\\\" width=\\\"100%\\\"><em>\u6b63\u5219\u8fd0\u7b97\u7b26<\/em><\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"36%\\\"><strong>~\u00a0!~<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"63%\\\">\u5339\u914d\u6b63\u5219\u8868\u8fbe\u5f0f\u548c\u4e0d\u5339\u914d\u6b63\u5219\u8868\u8fbe\u5f0f<\/td>\n<\/tr>\n<tr>\n<td colspan=\\\"2\\\" valign=\\\"top\\\" width=\\\"100%\\\"><em>\u5173\u7cfb\u8fd0\u7b97\u7b26<\/em><\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"36%\\\"><strong>&lt; &lt;= &gt; &gt;= != ==<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"63%\\\">\u5173\u7cfb\u8fd0\u7b97\u7b26<\/td>\n<\/tr>\n<tr>\n<td colspan=\\\"2\\\" valign=\\\"top\\\" width=\\\"100%\\\"><em>\u7b97\u672f\u8fd0\u7b97\u7b26<\/em><\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"36%\\\"><strong>+\u00a0&#8211;<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"63%\\\">\u52a0\uff0c\u51cf<\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"36%\\\"><strong>* \/ &amp;<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"63%\\\">\u4e58\uff0c\u9664\u4e0e\u6c42\u4f59<\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"36%\\\"><strong>+ &#8211; !<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"63%\\\">\u4e00\u5143\u52a0\uff0c\u51cf\u548c\u903b\u8f91\u975e<\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"36%\\\"><strong>^ ***<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"63%\\\">\u6c42\u5e42<\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"36%\\\"><strong>++ &#8212;<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"63%\\\">\u589e\u52a0\u6216\u51cf\u5c11\uff0c\u4f5c\u4e3a\u524d\u7f00\u6216\u540e\u7f00<\/td>\n<\/tr>\n<tr>\n<td colspan=\\\"2\\\" valign=\\\"top\\\" width=\\\"100%\\\"><em>\u5176\u4ed6\u8fd0\u7b97\u7b26<\/em><\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"36%\\\"><strong>$<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"63%\\\">\u5b57\u6bb5\u5f15\u7528<\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"36%\\\"><strong>\u7a7a\u683c<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"63%\\\">\u5b57\u7b26\u4e32\u94fe\u63a5\u7b26<\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"36%\\\"><strong>?:<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"63%\\\">\u4e09\u76ee\u8fd0\u7b97\u7b26<\/td>\n<\/tr>\n<tr>\n<td valign=\\\"top\\\" width=\\\"36%\\\"><strong>In<\/strong><\/td>\n<td valign=\\\"top\\\" width=\\\"63%\\\">\u6570\u7ec4\u4e2d\u662f\u5426\u5b58\u5728\u67d0\u952e\u503c<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3 id=\\\"auto-id-4\\\"><i id=\\\"locator-auto-id-4\\\" class=\\\"lnh-article-header-locator\\\"><\/i>1.2.2\u00a0\u5e38\u7528AWK\u5185\u7f6e\u53d8\u91cf<\/h3>\n<table border=\\\"1\\\" cellspacing=\\\"0\\\" cellpadding=\\\"0\\\">\n<tbody>\n<tr>\n<td width=\\\"16%\\\">\n<p align=\\\"center\\\"><strong>\u53d8\u91cf\u540d<\/strong><\/p>\n<\/td>\n<td width=\\\"83%\\\">\n<p align=\\\"center\\\"><strong>\u5c5e<\/strong><strong>\u6027<\/strong><\/p>\n<\/td>\n<\/tr>\n<tr>\n<td width=\\\"16%\\\">\n<p align=\\\"center\\\"><strong>$0<\/strong><\/p>\n<\/td>\n<td width=\\\"83%\\\">\u5f53\u524d\u8bb0\u5f55<\/td>\n<\/tr>\n<tr>\n<td width=\\\"16%\\\">\n<p style=\\\"text-align: center;\\\" align=\\\"center\\\"><span style=\\\"font-size: 15px; white-space: nowrap;\\\">$<\/span><strong>n<\/strong><\/p>\n<\/td>\n<td width=\\\"83%\\\">\u5f53\u524d\u8bb0\u5f55\u7684\u7b2c\u00a0n\u00a0\u4e2a\u5b57\u6bb5<\/td>\n<\/tr>\n<tr>\n<td width=\\\"16%\\\">\n<p align=\\\"center\\\"><strong>FS<\/strong><\/p>\n<\/td>\n<td width=\\\"83%\\\">\u8f93\u5165\u5b57\u6bb5\u5206\u9694\u7b26\u00a0\u9ed8\u8ba4\u662f\u7a7a\u683c<\/td>\n<\/tr>\n<tr>\n<td width=\\\"16%\\\">\n<p align=\\\"center\\\"><strong>RS<\/strong><\/p>\n<\/td>\n<td width=\\\"83%\\\">\u8f93\u5165\u8bb0\u5f55\u5206\u5272\u7b26\u00a0\u9ed8\u8ba4\u4e3a\u6362\u884c\u7b26<\/td>\n<\/tr>\n<tr>\n<td width=\\\"16%\\\">\n<p align=\\\"center\\\"><strong>NF<\/strong><\/p>\n<\/td>\n<td width=\\\"83%\\\">\u5f53\u524d\u8bb0\u5f55\u4e2d\u7684\u5b57\u6bb5\u4e2a\u6570\uff0c\u5c31\u662f\u6709\u591a\u5c11\u5217<\/td>\n<\/tr>\n<tr>\n<td width=\\\"16%\\\">\n<p align=\\\"center\\\"><strong>NR<\/strong><\/p>\n<\/td>\n<td width=\\\"83%\\\">\u5df2\u7ecf\u8bfb\u51fa\u7684\u8bb0\u5f55\u6570\uff0c\u5c31\u662f\u884c\u53f7\uff0c\u4ece\u00a01\u00a0\u5f00\u59cb<\/td>\n<\/tr>\n<tr>\n<td width=\\\"16%\\\">\n<p align=\\\"center\\\"><strong>OFS<\/strong><\/p>\n<\/td>\n<td width=\\\"83%\\\">\u8f93\u51fa\u5b57\u6bb5\u5206\u9694\u7b26\u00a0\u9ed8\u8ba4\u4e5f\u662f\u7a7a\u683c<\/td>\n<\/tr>\n<tr>\n<td width=\\\"16%\\\">\n<p align=\\\"center\\\"><strong>ORS<\/strong><\/p>\n<\/td>\n<td width=\\\"83%\\\">\u8f93\u51fa\u7684\u8bb0\u5f55\u5206\u9694\u7b26\u00a0\u9ed8\u8ba4\u4e3a\u6362\u884c\u7b26<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3 id=\\\"auto-id-5\\\"><i id=\\\"locator-auto-id-5\\\" class=\\\"lnh-article-header-locator\\\"><\/i>1.2.3 awk\u4e2d\u7684\u6b63\u5219<\/h3>\n<table border=\\\"1\\\" cellspacing=\\\"0\\\" cellpadding=\\\"0\\\">\n<tbody>\n<tr>\n<td width=\\\"10%\\\"><strong>\u5143\u5b57\u7b26<\/strong><\/td>\n<td width=\\\"27%\\\"><strong>\u529f\u80fd<\/strong><\/td>\n<td width=\\\"20%\\\"><strong>\u793a\u4f8b<\/strong><\/td>\n<td width=\\\"41%\\\"><strong>\u89e3\u91ca<\/strong><\/td>\n<\/tr>\n<tr>\n<td width=\\\"10%\\\"><strong>^<\/strong><\/td>\n<td width=\\\"27%\\\">\u884c\u9996\u5b9a\u4f4d\u7b26<\/td>\n<td width=\\\"20%\\\">\/^root\/<\/td>\n<td width=\\\"41%\\\">\u5339\u914d\u6240\u6709\u4ee5\u00a0root\u00a0\u5f00\u5934\u7684\u884c<\/td>\n<\/tr>\n<tr>\n<td width=\\\"10%\\\"><strong>$<\/strong><\/td>\n<td width=\\\"27%\\\">\u884c\u5c3e\u5b9a\u4f4d\u7b26<\/td>\n<td width=\\\"20%\\\">\/root$\/<\/td>\n<td width=\\\"41%\\\">\u5339\u914d\u6240\u6709\u4ee5\u00a0root\u00a0\u7ed3\u5c3e\u7684\u884c<\/td>\n<\/tr>\n<tr>\n<td width=\\\"10%\\\"><strong>.<\/strong><\/td>\n<td width=\\\"27%\\\">\u5339\u914d\u4efb\u610f\u5355\u4e2a\u5b57\u7b26<\/td>\n<td width=\\\"20%\\\">\/r..t\/<\/td>\n<td width=\\\"41%\\\">\u5339\u914d\u5b57\u6bcd\u00a0r,\u7136\u540e\u4e24\u4e2a\u4efb\u610f\u5b57\u7b26\uff0c\u518d\u4ee5\u00a0l<br \/>\n\u7ed3\u5c3e\u7684\u884c\uff0c\u6bd4\u5982\u00a0root,r33l\u00a0\u7b49<\/td>\n<\/tr>\n<tr>\n<td width=\\\"10%\\\"><strong>*<\/strong><\/td>\n<td width=\\\"27%\\\">\u5339\u914d\u00a00\u00a0\u4e2a\u6216\u591a\u4e2a\u524d\u5bfc\u5b57\u7b26(\u5305\u62ec\u56de\u8f66)<\/td>\n<td width=\\\"20%\\\">\/a*ool\/<\/td>\n<td width=\\\"41%\\\">\u5339\u914d\u00a00\u00a0\u4e2a\u6216\u591a\u4e2a\u00a0a\u00a0\u4e4b\u540e\u7d27\u8ddf\u7740\u00a0ool\u00a0\u7684\u884c\uff0c\u6bd4\u5982\u00a0ool\uff0caaaaool\u00a0\u7b49<\/td>\n<\/tr>\n<tr>\n<td width=\\\"10%\\\"><strong>+<\/strong><\/td>\n<td width=\\\"27%\\\">\u5339\u914d\u00a01\u00a0\u4e2a\u6216\u591a\u4e2a\u524d\u5bfc\u5b57\u7b26<\/td>\n<td width=\\\"20%\\\">\/a+b\/<\/td>\n<td width=\\\"41%\\\">\u5339\u914d\u00a01\u00a0\u4e2a\u6216\u591a\u4e2a\u00a0a\u00a0\u52a0\u00a0b\u00a0\u7684\u884c\uff0c\u6bd4\u5982<br \/>\nab,aab\u00a0\u7b49<\/td>\n<\/tr>\n<tr>\n<td width=\\\"10%\\\"><strong>?<\/strong><\/td>\n<td width=\\\"27%\\\">\u5339\u914d\u00a00\u00a0\u4e2a\u6216\u00a01\u00a0\u4e2a\u524d\u5bfc\u5b57\u7b26<\/td>\n<td width=\\\"20%\\\">\/a?b\/<\/td>\n<td width=\\\"41%\\\">\u5339\u914d\u00a0b\u00a0\u6216\u00a0ab\u00a0\u7684\u884c<\/td>\n<\/tr>\n<tr>\n<td width=\\\"10%\\\"><strong>[]<\/strong><\/td>\n<td width=\\\"27%\\\">\u5339\u914d\u6307\u5b9a\u5b57\u7b26\u7ec4\u5185\u7684\u4efb\u610f\u4e00\u4e2a\u5b57\u7b26<\/td>\n<td width=\\\"20%\\\">\/^[abc]<\/td>\n<td width=\\\"41%\\\">\u5339\u914d\u4ee5\u5b57\u6bcd\u00a0a\u00a0\u6216b\u00a0\u6216\u00a0c\u00a0\u5f00\u5934\u7684\u884c<\/td>\n<\/tr>\n<tr>\n<td width=\\\"10%\\\"><strong>[^]<\/strong><\/td>\n<td width=\\\"27%\\\">\u5339\u914d\u4e0d\u5728\u6307\u5b9a\u5b57\u7b26\u7ec4\u5185\u4efb\u610f\u4e00\u4e2a\u5b57\u7b26<\/td>\n<td width=\\\"20%\\\">\/^[^abc]\/<\/td>\n<td width=\\\"41%\\\">\u5339\u914d\u4e0d\u4ee5\u5b57\u6bcd\u00a0a\u00a0\u6216\u00a0b\u00a0\u6216\u00a0c\u00a0\u5f00\u5934\u7684\u884c<\/td>\n<\/tr>\n<tr>\n<td width=\\\"10%\\\"><strong>()<\/strong><\/td>\n<td width=\\\"27%\\\">\u5b50\u8868\u8fbe\u5f0f\u7ec4\u5408<\/td>\n<td width=\\\"20%\\\">\/(rool)+\/<\/td>\n<td width=\\\"41%\\\">\u8868\u793a\u4e00\u4e2a\u6216\u591a\u4e2a\u00a0rool\u00a0\u7ec4\u5408\uff0c\u5f53\u6709\u4e00\u4e9b\u5b57\u7b26\u9700\u8981\u7ec4\u5408\u65f6\uff0c\u4f7f\u7528\u62ec\u53f7\u62ec\u8d77\u6765<\/td>\n<\/tr>\n<tr>\n<td width=\\\"10%\\\"><strong>|<\/strong><\/td>\n<td width=\\\"27%\\\">\u6216\u8005\u7684\u610f\u601d<\/td>\n<td width=\\\"20%\\\">\/(root)|B\/<\/td>\n<td width=\\\"41%\\\">\u5339\u914droot\u00a0\u6216\u8005\u00a0B\u00a0\u7684\u884c<\/td>\n<\/tr>\n<tr>\n<td width=\\\"10%\\\"><strong>\\\\<\/strong><\/td>\n<td width=\\\"27%\\\">\u8f6c\u4e49\u5b57\u7b26<\/td>\n<td width=\\\"20%\\\">\/a\\\\\/\\\\\/\/<\/td>\n<td width=\\\"41%\\\">\u5339\u914d\u00a0a\/\/<\/td>\n<\/tr>\n<tr>\n<td width=\\\"10%\\\"><strong>~,!~<\/strong><\/td>\n<td width=\\\"27%\\\">\u5339\u914d\uff0c\u4e0d\u5339\u914d\u7684\u6761\u4ef6\u8bed\u53e5<\/td>\n<td width=\\\"20%\\\">$1~\/root\/<\/td>\n<td width=\\\"41%\\\">\u5339\u914d\u7b2c\u4e00\u4e2a\u5b57\u6bb5\u5305\u542b\u5b57\u7b26root\u00a0\u7684\u6240\u6709\u8bb0\u5f55<\/td>\n<\/tr>\n<tr>\n<td width=\\\"10%\\\"><strong>x{m}<\/strong><\/td>\n<td width=\\\"27%\\\">x\u00a0\u91cd\u590dm\u00a0\u6b21<\/td>\n<td width=\\\"20%\\\">\/(root){3}\/<\/td>\n<td width=\\\"41%\\\">\u9700\u8981\u6ce8\u610f\u4e00\u70b9\u7684\u662f\uff0croot\u00a0\u52a0\u62ec\u53f7\u548c\u4e0d<\/td>\n<\/tr>\n<tr>\n<td width=\\\"10%\\\"><strong>x{m,}<\/strong><\/td>\n<td width=\\\"27%\\\">x\u00a0\u91cd\u590d\u81f3\u5c11m\u00a0\u6b21<\/td>\n<td width=\\\"20%\\\">\/(root){3,}\/<\/td>\n<td width=\\\"41%\\\">\u52a0\u62ec\u53f7\u7684\u533a\u522b\uff0cx\u00a0\u53ef\u4ee5\u8868\u793a\u5b57\u7b26\u4e32\u4e5f<\/td>\n<\/tr>\n<tr>\n<td width=\\\"10%\\\"><strong>X{m,n}<\/strong><\/td>\n<td width=\\\"27%\\\">x\u00a0\u91cd\u590d\u81f3\u5c11\u00a0m\u00a0\u6b21\uff0c<br \/>\n\u4f46\u4e0d\u8d85\u8fc7\u00a0n\u00a0\u6b21<\/td>\n<td width=\\\"20%\\\">\/(root){5,6}\/<\/td>\n<td width=\\\"41%\\\">\u53ef\u4ee5\u53ea\u662f\u4e00\u4e2a\u5b57\u7b26\uff0c\u6240\u4ee5\/root\\\\{5\\\\}\/<br \/>\n\u8868\u793a\u5339\u914droo\u00a0\u518d\u52a0\u4e0a5\u00a0\u4e2at\uff0c\u53caroottttt<\/td>\n<\/tr>\n<tr>\n<td width=\\\"10%\\\"><strong>\u00a0<\/strong><\/td>\n<td width=\\\"27%\\\">\u9700\u8981\u6307\u5b9a\u53c2\u6570\uff1a<br \/>\n-posix\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u6216\u8005<br \/>\n&#8211;re-interval\u00a0\u00a0 \u00a0\u6ca1\u00a0\u6709\u8be5\u53c2\u6570\u4e0d\u80fd\u4f7f\u7528\u8be5\u6a21\u5f0f<\/td>\n<td width=\\\"20%\\\">cat\u00a0\u00a0 rex.txt smierth,harry smierth,reru robin,tom<\/td>\n<td width=\\\"41%\\\">\/<span id=\\\"MathJax-Element-2-Frame\\\" class=\\\"MathJax\\\" style=\\\"display: inline; font-style: normal; font-weight: normal; line-height: normal; font-size: 14px; text-indent: 0px; text-align: left; text-transform: none; letter-spacing: normal; word-spacing: normal; overflow-wrap: normal; white-space: nowrap; float: none; direction: ltr; max-width: none; max-height: none; min-width: 0px; min-height: 0px; border: 0px; padding: 0px; margin: 0px; position: relative;\\\" tabindex=\\\"0\\\" role=\\\"presentation\\\" data-mathml=\\\"&lt;math xmlns=&quot;http:\/\/www.w3.org\/1998\/Math\/MathML&quot;&gt;&lt;mi&gt;r&lt;\/mi&gt;&lt;mi&gt;o&lt;\/mi&gt;&lt;mi&gt;o&lt;\/mi&gt;&lt;mi&gt;t&lt;\/mi&gt;&lt;\/math&gt;\\\"><span id=\\\"MathJax-Span-5\\\" class=\\\"math\\\"><span id=\\\"MathJax-Span-6\\\" class=\\\"mrow\\\"><span id=\\\"MathJax-Span-7\\\" class=\\\"mi\\\">r<\/span><span id=\\\"MathJax-Span-8\\\" class=\\\"mi\\\">o<\/span><span id=\\\"MathJax-Span-9\\\" class=\\\"mi\\\">o<\/span><span id=\\\"MathJax-Span-10\\\" class=\\\"mi\\\">t<\/span><\/span><\/span><span class=\\\"MJX_Assistive_MathML\\\" role=\\\"presentation\\\">root<\/span><\/span>\\\\{2,\\\\}\/\u00a0\u5219\u00a0\u00a0\u00a0\u8868\u00a0\u793a\u00a0\u5339\u00a0\u914d<br \/>\nrootrootrootroot\u00a0\u7b49<br \/>\nawk -posix \\&#8217;\/er\\\\{1,2\\\\}\/\\&#8217; rex.text smierth,harry<br \/>\nsmierth,reru<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h3 id=\\\"auto-id-6\\\"><i id=\\\"locator-auto-id-6\\\" class=\\\"lnh-article-header-locator\\\"><\/i>1.2.4 awk\u00a0\u5e38\u7528\u51fd\u6570\u8868<\/h3>\n<table border=\\\"1\\\" cellspacing=\\\"0\\\" cellpadding=\\\"0\\\">\n<tbody>\n<tr>\n<td width=\\\"25%\\\"><strong>\u51fd\u6570<\/strong><\/td>\n<td width=\\\"74%\\\"><strong>\u8bf4\u660e<\/strong><\/td>\n<\/tr>\n<tr>\n<td width=\\\"25%\\\">gsub( Ere, Repl, [ In ] )<\/td>\n<td width=\\\"74%\\\">\u9664\u4e86\u6b63\u5219\u8868\u8fbe\u5f0f\u6240\u6709\u5177\u4f53\u503c\u88ab\u66ff\u4ee3\u8fd9\u70b9\uff0c\u5b83\u548c\u00a0sub\u00a0\u51fd\u6570\u5b8c\u5168\u4e00\u6837\u5730\u6267\u884c\uff0c\u3002<\/td>\n<\/tr>\n<tr>\n<td width=\\\"25%\\\">sub( Ere, Repl, [ In ] )<\/td>\n<td width=\\\"74%\\\">\u7528\u00a0Repl\u00a0\u53c2\u6570\u6307\u5b9a\u7684\u5b57\u7b26\u4e32\u66ff\u6362\u00a0In\u00a0\u53c2\u6570\u6307\u5b9a\u7684\u5b57\u7b26\u4e32\u4e2d\u7684\u7531\u00a0Ere\u53c2\u6570\u6307\u5b9a\u7684\u6269\u5c55\u6b63\u5219\u8868\u8fbe\u5f0f\u7684\u7b2c\u4e00\u4e2a\u5177\u4f53\u503c\u3002sub\u00a0\u51fd\u6570\u8fd4\u56de\u66ff\u6362\u7684\u6570\u91cf\u3002\u51fa\u73b0\u5728\u00a0Repl\u00a0\u53c2\u6570\u6307\u5b9a\u7684\u5b57\u7b26\u4e32\u4e2d\u7684\u00a0&amp;\uff08\u548c\u7b26\u53f7\uff09\u7531\u00a0In\u00a0\u53c2\u6570\u6307\u5b9a\u7684\u4e0e\u00a0Ere\u00a0\u53c2\u6570\u7684\u6307\u5b9a\u7684\u6269\u5c55\u6b63\u5219\u8868\u8fbe\u5f0f\u5339\u914d\u7684\u5b57\u7b26\u4e32\u66ff\u6362\u3002\u5982\u679c\u672a\u6307\u5b9a\u00a0In\u00a0\u53c2\u6570\uff0c\u7f3a\u7701\u503c\u662f\u6574\u4e2a\u8bb0\u5f55\uff08$0\u00a0\u8bb0\u5f55\u53d8\u91cf\uff09\u3002<\/td>\n<\/tr>\n<tr>\n<td width=\\\"25%\\\">index( String1, String2 )<\/td>\n<td width=\\\"74%\\\">\u5728\u7531\u00a0String1\u00a0\u53c2\u6570\u6307\u5b9a\u7684\u5b57\u7b26\u4e32\uff08\u5176\u4e2d\u6709\u51fa\u73b0\u00a0String2\u00a0\u6307\u5b9a\u7684\u53c2\u6570\uff09\u4e2d\uff0c\u8fd4\u56de\u4f4d\u7f6e\uff0c\u4ece\u00a01\u00a0\u5f00\u59cb\u7f16\u53f7\u3002\u5982\u679c\u00a0String2\u00a0\u53c2\u6570\u4e0d\u5728\u00a0String1 \u00a0\u53c2\u6570\u4e2d\u51fa\u73b0\uff0c\u5219\u8fd4\u56de\u00a00\uff08\u96f6\uff09\u3002<\/td>\n<\/tr>\n<tr>\n<td width=\\\"25%\\\">length [(String)]<\/td>\n<td width=\\\"74%\\\">\u8fd4\u56de\u00a0String \u00a0\u53c2\u6570\u6307\u5b9a\u7684\u5b57\u7b26\u4e32\u7684\u957f\u5ea6\uff08\u5b57\u7b26\u5f62\u5f0f\uff09\u3002\u5982\u679c\u672a\u7ed9\u51fa<br \/>\nString \u00a0\u53c2\u6570\uff0c\u5219\u8fd4\u56de\u6574\u4e2a\u8bb0\u5f55\u7684\u957f\u5ea6\uff08$0 \u00a0\u8bb0\u5f55\u53d8\u91cf\uff09\u3002<\/td>\n<\/tr>\n<tr>\n<td width=\\\"25%\\\">blength [(String)]<\/td>\n<td width=\\\"74%\\\">\u8fd4\u56de\u00a0String \u00a0\u53c2\u6570\u6307\u5b9a\u7684\u5b57\u7b26\u4e32\u7684\u957f\u5ea6\uff08\u4ee5\u5b57\u8282\u4e3a\u5355\u4f4d\uff09\u3002\u5982\u679c\u672a\u7ed9\u51fa<br \/>\nString \u00a0\u53c2\u6570\uff0c\u5219\u8fd4\u56de\u6574\u4e2a\u8bb0\u5f55\u7684\u957f\u5ea6\uff08$0 \u00a0\u8bb0\u5f55\u53d8\u91cf\uff09\u3002<\/td>\n<\/tr>\n<tr>\n<td width=\\\"25%\\\">substr( String, M, [ N ] )<\/td>\n<td width=\\\"74%\\\">\u8fd4\u56de\u5177\u6709\u00a0N\u00a0\u53c2\u6570\u6307\u5b9a\u7684\u5b57\u7b26\u6570\u91cf\u5b50\u4e32\u3002\u5b50\u4e32\u4ece\u00a0String\u00a0\u53c2\u6570\u6307\u5b9a\u7684\u5b57\u7b26\u4e32\u53d6\u5f97\uff0c\u5176\u5b57\u7b26\u4ee5\u00a0M\u00a0\u53c2\u6570\u6307\u5b9a\u7684\u4f4d\u7f6e\u5f00\u59cb\u3002M\u00a0\u53c2\u6570\u6307\u5b9a\u4e3a\u5c06<br \/>\nString\u00a0\u53c2\u6570\u4e2d\u7684\u7b2c\u4e00\u4e2a\u5b57\u7b26\u4f5c\u4e3a\u7f16\u53f7\u00a01\u3002\u5982\u679c\u672a\u6307\u5b9a\u00a0N\u00a0\u53c2\u6570\uff0c\u5219\u5b50\u4e32\u7684\u957f\u5ea6\u5c06\u662f\u00a0M\u00a0\u53c2\u6570\u6307\u5b9a\u7684\u4f4d\u7f6e\u5230\u00a0String\u00a0\u53c2\u6570\u7684\u672b\u5c3e\u00a0\u7684\u957f\u5ea6\u3002<\/td>\n<\/tr>\n<tr>\n<td width=\\\"25%\\\">match( String, Ere )<\/td>\n<td width=\\\"74%\\\">\u5728\u00a0String \u00a0\u53c2\u6570\u6307\u5b9a\u7684\u5b57\u7b26\u4e32\uff08Ere \u00a0\u53c2\u6570\u6307\u5b9a\u7684\u6269\u5c55\u6b63\u5219\u8868\u8fbe\u5f0f\u51fa\u73b0\u5728\u5176\u4e2d\uff09\u4e2d\u8fd4\u56de\u4f4d\u7f6e\uff08\u5b57\u7b26\u5f62\u5f0f\uff09\uff0c\u4ece\u00a01 \u00a0\u5f00\u59cb\u7f16\u53f7\uff0c\u6216\u5982\u679c\u00a0Ere \u00a0\u53c2\u6570\u4e0d\u51fa\u73b0\uff0c\u5219\u8fd4\u56de\u00a00\uff08\u96f6\uff09\u3002RSTART \u00a0\u7279\u6b8a\u53d8\u91cf\u8bbe\u7f6e\u4e3a\u8fd4\u56de\u503c\u3002RLENGTH\u7279\u6b8a\u53d8\u91cf\u8bbe\u7f6e\u4e3a\u5339\u914d\u7684\u5b57\u7b26\u4e32\u7684\u957f\u5ea6\uff0c\u6216\u5982\u679c\u672a\u627e\u5230\u4efb\u4f55\u5339\u914d\uff0c\u5219\u8bbe\u7f6e\u4e3a\u00a0-1\uff08\u8d1f\u4e00\uff09\u3002<\/td>\n<\/tr>\n<tr>\n<td width=\\\"25%\\\">split( String, A, [Ere] )<\/td>\n<td width=\\\"74%\\\">\u5c06\u00a0String\u00a0\u53c2\u6570\u6307\u5b9a\u7684\u53c2\u6570\u5206\u5272\u4e3a\u6570\u7ec4\u5143\u7d20\u00a0A[1], A[2], . . ., A[n]\uff0c\u5e76\u8fd4\u56de\u00a0n\u00a0\u53d8\u91cf\u7684\u503c\u3002\u6b64\u5206\u9694\u53ef\u4ee5\u901a\u8fc7\u00a0Ere \u00a0\u53c2\u6570\u6307\u5b9a\u7684\u6269\u5c55\u6b63\u5219\u8868\u8fbe\u5f0f\u8fdb\u884c\uff0c\u6216\u7528\u5f53\u524d\u5b57\u6bb5\u5206\u9694\u7b26\uff08FS\u00a0\u7279\u6b8a\u53d8\u91cf\uff09\u6765\u8fdb\u884c\uff08\u5982\u679c\u6ca1\u6709\u7ed9\u51fa\u00a0Ere\u53c2\u6570\uff09\u3002\u9664\u975e\u4e0a\u4e0b\u6587\u6307\u660e\u7279\u5b9a\u7684\u5143\u7d20\u8fd8\u5e94\u5177\u6709\u4e00\u4e2a\u6570\u5b57\u503c\uff0c\u5426\u5219\u00a0A \u00a0\u6570<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<h2 id=\\\"auto-id-7\\\"><i id=\\\"locator-auto-id-7\\\" class=\\\"lnh-article-header-locator\\\"><\/i>1.3 AWK\u5b9e\u8df5<\/h2>\n<h3 id=\\\"auto-id-8\\\"><i id=\\\"locator-auto-id-8\\\" class=\\\"lnh-article-header-locator\\\"><\/i>1.3.1\u00a0\u51fd\u6570\u7684\u7b80\u5355\u4f7f\u7528<\/h3>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@clsn6 ~]# awk \\'{gsub(\/[0-9]+\/,\\\"\\\");print}\\' \/tmp\/passwd\nroot:x:::root:\/root:\/bin\/bash\nbin:x:::bin:\/bin:\/sbin\/nologin\ndaemon:x:::daemon:\/sbin:\/sbin\/nologin\nadm:x:::adm:\/var\/adm:\/sbin\/nologin\nlp:x:::lp:\/var\/spool\/lpd:\/sbin\/nologin\nsync:x:::sync:\/sbin:\/bin\/sync\n\u00b7\u00b7\u00b7<\/pre>\n<\/div>\n<h3 id=\\\"auto-id-9\\\"><i id=\\\"locator-auto-id-9\\\" class=\\\"lnh-article-header-locator\\\"><\/i>1.3.2\u00a0\u7edf\u8ba1\u7cfb\u7edf\u4e2d\u7684secure\u6587\u4ef6\u4e2d\u8c01\u5728\u7834\u89e3\u4f60\u7684\u5bc6\u7801<\/h3>\n<p>1\u3001\u627e\u5230\u8c01\u5728\u7834\u89e3\u5bc6\u7801<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@clsn6 awk]# awk \\'\/Failed\/{print $(NF-3)}\\' secure-20161219 |sort |uniq -c  |sort -nk1\n      1 103.237.144.68\n      1 122.228.238.66\n      1 195.20.3.210\n      1 85.93.5.71\n\u00b7\u00b7\u00b7<\/pre>\n<\/div>\n<p>2\u3001\u8fc7\u6ee4\u51fa\u5305\u542bFailed password\u7684\u884c\u00a0\u5e76\u7edf\u8ba1\u6bcf\u4e2aip\u5730\u5740\u51fa\u73b0\u7684\u6b21\u6570<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@clsn6 awk]# awk \\'\/Failed\/{fa[$(NF-3)]++}END{for(pol in fa)print pol,fa[pol]}\\' secure-20161219 |sort -rnk2\n218.65.30.25 68652\n218.65.30.53 34326\n218.87.109.154 21201\n112.85.42.103 18065\n112.85.42.99 17164\n218.87.109.151 17163<\/pre>\n<\/div>\n<h3 id=\\\"auto-id-10\\\"><i id=\\\"locator-auto-id-10\\\" class=\\\"lnh-article-header-locator\\\"><\/i>1.3.3\u00a0\u7edf\u8ba1secure\u6587\u4ef6\u4e2d\u6bcf\u4e2a\u7528\u6237\uff0c\u88ab\u540c\u4e00ip\u7834\u89e3\u591a\u5c11\u6b21<\/h3>\n<p>1\u3001\u8fdb\u7834\u89e3\u4f7f\u7528\u7684\u7528\u6237\u53ca\u5730\u5740\u5b9a\u5411\u5230\u6587\u4ef6\u4e2d<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@clsn6 awk]# awk \\'\/Failed\/{print $(NF-5),$(NF-3)}\\' secure-20161219 &gt;user-ip.log<\/pre>\n<\/div>\n<p>2\u3001\u5bf9\u6587\u4ef6\u8fdb\u884c\u53bb\u91cd\u6392\u5e8f\u6d4b<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@clsn6 awk]# awk \\'{h[$1\\\" \\\"$2]++}END{for(p in h) print p,h[p]}\\' user-ip.log |head\nexport 209.126.122.70 3\ncvsadmin 209.126.122.70 3\nuser1 209.126.122.70 1\ndasusr1 209.126.122.70 4\n1 118.100.251.170 1\ngit 209.126.122.70 5\nboss 195.154.50.61 1\nuser1 46.139.219.84 2\nwww 123.31.34.165 2\nwebmaster 195.154.50.61 1<\/pre>\n<\/div>\n<p>3\u3001\u64cd\u4f5c\u65e5\u5fd7\u6587\u4ef6\uff0c\u53d6\u51fa\u6570\u636e<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@clsn6 awk]# awk \\'\/Failed\/{h[$(NF-5)\\\" \\\"$(NF-3)]++}END{for(p in h) print p,h[p]}\\'  secure-20161219 |head\nexport 209.126.122.70 3\ncvsadmin 209.126.122.70 3\nuser1 209.126.122.70 1\ndasusr1 209.126.122.70 4\n1 118.100.251.170 1<\/pre>\n<\/div>\n<h3 id=\\\"auto-id-11\\\"><i id=\\\"locator-auto-id-11\\\" class=\\\"lnh-article-header-locator\\\"><\/i>1.3.4\u00a0\u7edf\u8ba1nginx access.log\u6587\u4ef6\u4e2d\u5bf9ip\u5730\u5740\u53bb\u91cd\u5e76\u7edf\u8ba1\u91cd\u590d\u6570<\/h3>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@clsn6 awk]# awk \\'{h[$1]++}END{for(i in h) print i,h[i]}\\' access.log |sort -nrk2 |head\n58.220.223.62 12049\n112.64.171.98 10856\n114.83.184.139 1982<\/pre>\n<\/div>\n<h3 id=\\\"auto-id-12\\\"><i id=\\\"locator-auto-id-12\\\" class=\\\"lnh-article-header-locator\\\"><\/i>1.3.5\u00a0\u7edf\u8ba1access.log\u6587\u4ef6\u4e2d\u6bcf\u4e2aip\u5730\u5740\u4f7f\u7528\u4e86\u591a\u5c11\u6d41\u91cf<\/h3>\n<p>1\u3001\u6d41\u91cf\u603b\u8ba1<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@clsn6 awk]# awk \\'{sum=sum+$10}END{print sum}\\' access.log\n2478496663\n[root@clsn6 awk]# awk \\'{sum=sum+$10}END{print sum\/1024^3}\\' access.log\n2.30828<\/pre>\n<\/div>\n<p>2\u3001\u6bcf\u4e2aip\u4f7f\u7528\u7684\u6d41\u91cf<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@clsn6 awk]# awk \\'{h[$1]=h[$1]+$10}END{for(p in h) print p,h[p]\/1024^2 }\\' access.log |sort -rnk2|column -t |head\n114.83.184.139   29.91\n117.136.66.10    21.3922\n116.216.30.47    20.4716\n223.104.5.197    20.4705\n116.216.0.60     18.2584<\/pre>\n<\/div>\n<h3 id=\\\"auto-id-13\\\"><i id=\\\"locator-auto-id-13\\\" class=\\\"lnh-article-header-locator\\\"><\/i>1.3.6\u00a0\u7edf\u8ba1access.log\u6587\u4ef6\u4e2d\u6bcf\u4e2aip\u5730\u5740\u4f7f\u7528\u4e86\u591a\u5c11\u6d41\u91cf\u548c\u6bcf\u4e2aip\u5730\u5740\u7684\u51fa\u73b0\u6b21\u6570<\/h3>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@clsn6 awk]# awk \\'{count[$1]++;sum[$1]=sum[$1]+$10}END{for(pol in sum)print pol,count[pol],sum[pol]}\\' access.log |sort -nrk2 |column -t |head\n58.220.223.62    12049  12603075\n112.64.171.98    10856  15255013\n114.83.184.139   1982   31362956\n117.136.66.10    1662   22431302\n115.29.245.13    1318   1161468\n223.104.5.197    961    21464856\n116.216.0.60     957    19145329<\/pre>\n<\/div>\n<p>\u683c\u5f0f\u5316\u547d\u4ee4<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>awk \\'{\n  count[$1]++\n  sum[$1]+=$10\n}END{\n  for(pol in sum)\n  print pol,count[pol],sum[pol]\n}\\' access.log |sort -nrk3 |head<\/pre>\n<\/div>\n<p>\u683c\u5f0f\u5316\u540e\u6267\u884c<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@clsn6 awk]# awk \\'{\n  count[$1]++\n  sum[$1]+=$10\n}END{\n  for(pol in sum)\n  print pol,count[pol],sum[pol]\n}\\' access.log |column -t|  sort -nrk3 |head\n114.83.184.139   1982   31362956\n117.136.66.10    1662   22431302\n116.216.30.47    506    21466000\n223.104.5.197    961    21464856\n116.216.0.60     957    19145329\n114.141.164.180  695    17219553\n114.111.166.22   753    17121524\n223.104.5.202    871    16911512\n116.228.21.187   596    15969887\n112.64.171.98    10856  15255013<\/pre>\n<\/div>\n<h3 id=\\\"auto-id-14\\\"><i id=\\\"locator-auto-id-14\\\" class=\\\"lnh-article-header-locator\\\"><\/i>1.3.7\u00a0\u6309\u8981\u6c42\u5f97\u5230\u6700\u540e\u9762\u7684\u683c\u5f0f\u7684\u7ed3\u679c<\/h3>\n<p>\u6587\u4ef6\u5185\u5bb9<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>cat &gt;next2.txg&lt;&lt; EOF\nweb01[192.168.2.100]\nhttpd            ok\ntomcat            ok\nsendmail          ok\nweb02[192.168.2.101]\nhttpd            ok\npostfix           ok\nweb03[192.168.2.102]\nmysqld           ok\nhttpd            ok\nEOF<\/pre>\n<\/div>\n<p>\u60f3\u8981\u7684\u7ed3\u679c:<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>web01[192.168.2.100] httpd            ok\nweb01[192.168.2.100] tomcat           ok\nweb01[192.168.2.100] sendmail          ok\nweb02[192.168.2.101] httpd            ok\nweb02[192.168.2.101] postfix           ok\nweb03[192.168.2.102] mysqld           ok\nweb03[192.168.2.102] httpd            ok<\/pre>\n<\/div>\n<p><strong>\u65b9\u6cd5\u4e00:<\/strong><\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@clsn6 awk]# awk \\'\/^web\/{tmp=$0} !\/^web\/{print tmp,$0}\\' next.txt\nweb01[192.168.2.100] httpd            ok\nweb01[192.168.2.100] tomcat           ok\nweb01[192.168.2.100] sendmail         ok\nweb02[192.168.2.101] httpd            ok\nweb02[192.168.2.101] postfix          ok\nweb03[192.168.2.102] mysqld           ok\nweb03[192.168.2.102] httpd            ok<\/pre>\n<\/div>\n<p><strong>\u65b9\u6cd5\u4e8c\uff1a<\/strong><\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@clsn6 awk]# awk \\'\/^web\/{tmp=$0;next}{print tmp,$0}\\' next.txt\nweb01[192.168.2.100] httpd            ok\nweb01[192.168.2.100] tomcat           ok\nweb01[192.168.2.100] sendmail         ok\nweb02[192.168.2.101] httpd            ok\nweb02[192.168.2.101] postfix          ok\nweb03[192.168.2.102] mysqld           ok\nweb03[192.168.2.102] httpd            ok<\/pre>\n<\/div>\n<p><strong>next:<\/strong><strong>\u505c\u6b62\u5904\u7406\u5f53\u524d\u884c\uff0c\u4ece\u5934\u5f00\u59cb\u5904\u7406\u4e0b\u4e00\u884c<\/strong><\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@clsn6 awk]# seq 5 |awk \\'NR==3{next}{print NR,$0}\\'\n1 1\n2 2\n4 4\n5 5\n[root@clsn6 awk]# seq 5 |awk \\'NR==1{next}{print NR,$0}\\'\n2 2\n3 3\n4 4\n5 5<\/pre>\n<\/div>\n<p>\u8df3\u8fc7\u5076\u6570\u884c<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@clsn6 awk]# seq 5 |awk \\'NR%2==0{next}{print NR,$0}\\'\n1 1\n3 3\n5 5<\/pre>\n<\/div>\n<p>\u8df3\u8fc7\u5947\u6570\u884c<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@clsn6 awk]# seq 5 |awk \\'NR%2==1{next}{print NR,$0}\\'\n2 2\n4 4<\/pre>\n<\/div>\n<h3 id=\\\"auto-id-15\\\"><i id=\\\"locator-auto-id-15\\\" class=\\\"lnh-article-header-locator\\\"><\/i>1.3.8\u00a0\u7edf\u8ba1\u6bcf\u4e2a\u5b66\u751f\u7684\u603b\u6210\u7ee9\u548c\u5e73\u5747\u6210\u7ee9<\/h3>\n<p><strong>\u6210\u7ee9\u6587\u4ef6<\/strong><\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>cat &gt; chengji.txt &lt;&lt;EOF\ncc 90 98 98 96 96 92\nll 70 77 85 83 70 89\nss 85 92 78 94 88 91\nnn 89 90 85 94 90 95\nbb 84 88 80 92 84 82\ngg 64 80 60 60 61 62\nEOF<\/pre>\n<\/div>\n<p>\u7b97\u51fa\u603b\u548c<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@clsn6 awk]#  awk \\'{sum=0;for(i=2;i&lt;=NF;i++)sum+=$i;print $1,sum}\\' chengji.txt\ncc 570\nll 474\nss 528\nnn 543\nbb 510\ngg 387<\/pre>\n<\/div>\n<p>\u7b97\u51fa\u5e73\u5747\u6570<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@clsn6 awk]#  awk \\'{sum=0;for(i=2;i&lt;=NF;i++)sum+=$i;avg=sum\/(NF-1);print $1,sum,avg}\\' chengji.txt\ncc 570 95\nll 474 79\nss 528 88\nnn 543 90.5\nbb 510 85\ngg 387 64.5<\/pre>\n<\/div>\n<p>\u683c\u5f0f\u5316\u547d\u4ee4<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>awk \\'{\n    sum=0\n    for(i=2;i&lt;=NF;i++)\n    sum+=$i\n    avg=sum\/(NF-1)\n    print $1,sum,avg\n}\\' chengji.txt<\/pre>\n<\/div>\n<h3 id=\\\"auto-id-16\\\"><i id=\\\"locator-auto-id-16\\\" class=\\\"lnh-article-header-locator\\\"><\/i>1.3.9\u00a0\u6253\u5370\u4e0b\u9762\u8bed\u53e5\u4e2d\u5b57\u7b26\u6570\u5c0f\u4e8e6\u7684\u5355\u8bcd<\/h3>\n<p>\u6587\u4ef6\u5185\u5bb9<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>echo \\\"I am clsn ops,I very like linux hahahaha.\\\" &gt; text.txt<\/pre>\n<\/div>\n<p>shell\u65b9\u6cd5<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@clsn6 awk]# for i in `sed  \\'s#,# #g\\' text.txt`\n&gt; do\n&gt;    [ ${#i} -lt 6 ] &amp;&amp; echo $i\n&gt; done\nI\nam\nclsn\nops\nI\nvery\nlike\nlinux<\/pre>\n<\/div>\n<p>grep\u00a0\u65b9\u6cd5<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@clsn6 awk]# egrep -wo \\'[a-Z]{,6}\\' text.txt\nI\nam\nclsn\nops\nI\nvery\nlike\nlinux<\/pre>\n<\/div>\n<p>awk\u65b9\u6cd5<\/p>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@clsn6 awk]# echo clsn |awk \\'{print length($1)}\\'\n4\n[root@clsn6 awk]# awk -F \\\"[, ]\\\" \\'{for(i=1;i&lt;=NF;i++) if (length($i)&lt;6) print $i}\\'   text.txt\nI\nam\nclsn\nops\nI\nvery\nlike\nlinux<\/pre>\n<\/div>\n<h2 id=\\\"auto-id-17\\\"><i id=\\\"locator-auto-id-17\\\" class=\\\"lnh-article-header-locator\\\"><\/i>1.4\u00a0\u9644\u5f55<\/h2>\n<h3 id=\\\"auto-id-18\\\"><i id=\\\"locator-auto-id-18\\\" class=\\\"lnh-article-header-locator\\\"><\/i>1.4.1 sort\u547d\u4ee4\u7684\u4f7f\u7528<\/h3>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@clsn6 awk]# du -sh \/* 2&gt;\/dev\/null|sort -hr\n1.1G    \/usr\n214M    \/lib\n120M    \/var\n109M    \/root\n38M    \/boot\n\u00b7\u00b7\u00b7<\/pre>\n<\/div>\n<h3 id=\\\"auto-id-19\\\"><i id=\\\"locator-auto-id-19\\\" class=\\\"lnh-article-header-locator\\\"><\/i>1.4.2\u00a0\u7edf\u8ba1\u6d41\u91cf\u4f7f\u7528\u7684\u547d\u4ee4<\/h3>\n<div class=\\\"cnblogs_code\\\">\n<pre>[root@clsn6 ~]# yum install htop iotop iftop atop nethogs -y\n# iftop \u603b\u4f53\u6d41\u91cf\u4f7f\u7528\u60c5\u51b5\n# nethogs \u663e\u793a\u8fdb\u884c\u7ea7\u522b\u7684\u6d41\u91cf\u4f7f\u7528<\/pre>\n<\/div>\n<h3 id=\\\"auto-id-20\\\"><i id=\\\"locator-auto-id-20\\\" class=\\\"lnh-article-header-locator\\\"><\/i>1.4.3\u00a0\u5176\u4ed6\u65e5\u5fd7\u5206\u6790\u65b9\u6cd5<\/h3>\n<div class=\\\"cnblogs_code\\\">\n<pre>awstat\uff0cpiwiki\uff0celk<\/pre>\n<\/div>\n<\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>1.1 \u4ecb\u7ecd awk\u5176\u540d\u79f0\u5f97\u81ea\u4e8e\u5b83\u7684\u521b\u59cb\u4eba\u00a0Alfred Aho\u00a0\u3001Peter Weinberger\u00a0\u548c\u00a0Br &hellip;<\/p>\n<p class=\"read-more\"> <a class=\"\" href=\"http:\/\/www.weijing.co\/?p=5412\"> <span class=\"screen-reader-text\">AWK\u5e38\u7528\u65b9\u6cd5<\/span> \u67e5\u770b\u5168\u6587 &raquo;<\/a><\/p>\n","protected":false},"author":4,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"default","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","theme-transparent-header-meta":"default","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":""},"categories":[102,124],"tags":[],"uagb_featured_image_src":{"full":false,"thumbnail":false,"medium":false,"medium_large":false,"large":false,"1536x1536":false,"2048x2048":false,"mailpoet_newsletter_max":false,"woocommerce_thumbnail":false,"woocommerce_single":false,"woocommerce_gallery_thumbnail":false,"shop_catalog":false,"shop_single":false,"shop_thumbnail":false},"uagb_author_info":{"display_name":"weijing","author_link":"http:\/\/www.weijing.co\/?author=4"},"uagb_comment_info":0,"uagb_excerpt":"1.1 \u4ecb\u7ecd awk\u5176\u540d\u79f0\u5f97\u81ea\u4e8e\u5b83\u7684\u521b\u59cb\u4eba\u00a0Alfred Aho\u00a0\u3001Peter Weinberger\u00a0\u548c\u00a0Br&hellip;","_links":{"self":[{"href":"http:\/\/www.weijing.co\/index.php?rest_route=\/wp\/v2\/posts\/5412"}],"collection":[{"href":"http:\/\/www.weijing.co\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.weijing.co\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.weijing.co\/index.php?rest_route=\/wp\/v2\/users\/4"}],"replies":[{"embeddable":true,"href":"http:\/\/www.weijing.co\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=5412"}],"version-history":[{"count":0,"href":"http:\/\/www.weijing.co\/index.php?rest_route=\/wp\/v2\/posts\/5412\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.weijing.co\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=5412"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.weijing.co\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=5412"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.weijing.co\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=5412"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}