Linux三剑客awk命令篇二:命令操作符

Linux三剑客awk命令篇二:命令操作符

关于awk的原理等基本知识请参考上篇:

Linux三剑客awk命令篇一:原理及基本命令

补充

1、语法格式:

(1) Awk完整语法

awk 'BEGIN{commands} pattern{commands}END{commands} ' file

BEGIN{commands}:处理数据前执行的命令。

END{commands}:处理完数据后执行的命令。

这两个命令可以省略。见(2)

(2) Awk基本语法

awk -F '分割符' '/模式/{动作} ' file

这里的 '/模式/{动作} ' 类似于sed的命令格式。

模式:

(1) 正则表达式(注意格式: /正则表达式/ )

(2) 条件表达式(例如:> <等等)

总结:

这里的模式通俗来讲是 用来找谁, 而动作表示是 干啥。

2、 awk的命令操作符

(1) 正则表达式与bash一致

(2) + - * / % ++ --

(3) && || !

(4) > < >= <= != == ~ !~

~:表示匹配后面的模式,用于字段,见 案例1

其余的都比较常见就不举例了。

3、案例

案例1:

~使用案例

awk -F : '$3 ~ /\<...\>/{print $1,$3}' /etc/passwd

解释:

模式:\<...\>

\< \>表示定界符,只匹配3个字符。

$3 ~:表示$3这个字段必须符合后面模式(\<...\>)的要求。

见如下输出结果,$3都是3个字符。

案例2:

% || ==使用案例

seq 100 | awk '$1 % 7 == 0 || $1 ~ /^99/{print $1}'

输出结果的要求:

整除7或者以99开头

案例3:

++使用

awk 'BEGIN{num=0}{num++}END{print num}' /etc/passwd

简单解释:

BEGIN{num=0}:定义一个变量num

{num++}:这里没有模式,只有动作。

即每匹配到文件/etc/passwd的一行就执行num++

END{print num}:文件遍历结束,打印num的值,即文件的行数。

这里我们使用wc -l验证也是没问题的。

cat /etc/passwd | wc -l

上面3个案例简单的使用了awk的命令操作符。

虽然只是用到了几个简单的,但是其他同理,大家可以执行操作。

下一篇:

Linux三剑客awk命令篇二之内部变量

欢迎大家给予宝贵的意见或者建议。

欢迎大家补充或者共享一些其他的方法。

感谢支持。



  • Linux閲岄潰sed鍜awk鍛戒护鍝釜閲嶈?
    绛旓細浣犲ソ寰堥珮鍏村洖绛旀偍鐨勯棶棰:鏃㈢劧鎺ヨЕ鍒颁簡涓夊墤瀹鐨剆ed鍜awk,瀵筁inux搴旇鏄湁浜涜鐭ヤ簡鍚.涓嬮潰鍩轰簬杩欎釜缁欐偍浠嬬粛涓.Linux鐨绉樼睄涓夊墤瀹 grep,sed,awk 鏄Linux鍛戒护,鐢氳嚦鏄痵hell缂栫▼閮ㄥ垎鐨勬牳蹇冩妧鏈.鎺屾彙涓庢暟閲忓彲浠ュ姞閫熷鐞嗘枃鏈熷害.grep鎿呴暱杩囨护涓庢鍒 sed鎿呴暱鏇挎崲涓庡鍒犳敼鏌 awk鎿呴暱缁熻璁$畻涓庡彇琛屽彇鍒 蹇敹涓嬩笅闈...
  • 006 Linux 鍛戒护涓夊墤瀹涔-grep
    绛旓細Linux鍛戒护涓殑grep锛氫綘鐨勬枃鏈悳绱㈤珮鎵嬪湪Linux鐨涓夊ぇ绁炲櫒鈥斺攕ed銆乬rep鍜awk涓紝grep鏃犵枒鎵紨鐫鍏抽敭鐨勮鑹诧紝瀹冧笓闂ㄨ礋璐f枃鏈暟鎹殑鏌ユ壘鍜岀瓫閫夈俫rep鍛戒护鐨勫▉鍔涗富瑕佷綋鐜板湪鍏朵赴瀵岀殑鍙夊弬鏁颁笂锛屾瘮濡傜敤浜庡湪澶氫釜鏂囦欢涓悓鏃舵煡鎵剧殑鍙傛暟锛屼互鍙婇掑綊鏌ユ壘鐨勯夐」-r/R锛岃繖浣垮緱瀹冨湪澶勭悊澶ч噺鏂囦欢鏃舵晥鐜囨瀬楂樸傞氳繃grep锛屼綘杩...
  • 涓夊墤瀹鏄粈涔堟剰鎬
    绛旓細涓夊墤瀹锛堝ぇ浠查┈鍒涗綔闀跨瘒灏忚锛変竴鑸寚涓変釜鐏灙鎵嬶紙澶т徊椹垱浣滈暱绡囧皬璇达級銆婁笁涓伀鏋墜銆嬶紝鍙堣瘧銆婁笁鍓戝銆嬨併婁緺闅愯銆嬶紝鏄硶鍥19涓栫邯娴极涓讳箟浣滃澶т徊椹殑浠h〃浣滀箣涓銆傝涔︽浘浜旀琚炕鎷嶆垚鐢靛奖浣滃搧銆傛晠浜嬩富瑙掍负杈捐揪灏兼槀锛屼笁涓伀鏋墜鍒嗗埆鏄樋澶氭柉锛屾尝灏斿鏂紝鍜岄樋鎷夊瘑鏂傝繖閮ㄥ巻鍙插皬璇翠互娉曞叞瑗垮浗鐜嬭矾鏄撳崄涓夋湞浠e拰鏉...
  • linux,鏂版墜瀛︿範浠庝粈涔堝紑濮?
    绛旓細绗笁闃舵锛歀inux Shell鍩虹 1. Shell缂栫▼鍩虹1 2. Shell缂栫▼鍩虹234 3. Linux涓夊墤瀹涔awk鍛戒护 绗洓闃舵锛歀inux缃戠粶鍩虹 1. 璁$畻鏈虹綉缁滃熀纭涓 2. 璁$畻鏈虹綉缁滃熀纭涓 3. 绗簩闃舵缁撴潫闇瑕佸甯堟垨璁插笀瀵规暣浣撹绋嬭繘琛屽洖椤俱傜浜旈樁娈碉細Linux缃戠粶鏈嶅姟 1. 闆嗙兢瀹炴垬鏋舵瀯寮濮嬪強鐜鍑嗗 2. rsync鏁版嵁鍚屾鏈嶅姟 3...
  • Linux绯荤粺甯哥敤鎿嶄綔鍛戒护鏈夊摢浜
    绛旓細22tee锛氬閲嶅畾鍚 / 1453.23vi/vim锛氱函鏂囨湰缂栬緫鍣 / 1473.24鑰佺敺瀛╅嗚鎬濇兂锛氬仛Linux杩愮淮鐨勫涓ソ澶 / 152绗4绔 鏂囨湰澶勭悊涓夊墤瀹 / 1534.1grep锛氭枃鏈繃婊ゅ伐鍏 / 1534.2sed锛氬瓧绗︽祦缂栬緫鍣 / 1594.3awk鍩虹鍏ラ棬 / 165绗5绔 Linux淇℃伅鏄剧ず涓庢悳绱㈡枃浠鍛戒护 / 1765.1uname锛氭樉绀虹郴缁熶俊鎭 / 1765.2...
  • 闆跺熀纭瀛︿範linux瑕佹庝箞寮濮
    绛旓細2. Xshell杩滅▼缃戠粶杩炴帴Linux銆佸熀纭浼樺寲銆佽繙绋嬭繛鎺ョ綉缁滃熀纭銆乆shell杩炴帴鏁呴殰鎺掗敊銆佹牳蹇冨熀纭鍛戒护璁茶В 3. Linux绯荤粺鏍稿績閫氶厤绗︿綋绯汇涓夊墤瀹锛坓rep,sed,awk锛夋牳蹇冩鍒欒〃杈惧紡绮捐鍙婁紒涓氱骇妗堜緥瀹炴垬妯℃嫙绮捐 4. Bash鏍稿績绗﹀彿銆佸揩鎹烽敭銆侀氶厤绗﹁瑙 5. Linux鐩綍銆丗HS\鎸傝浇銆佹枃浠跺睘鎬с佹牳蹇冪洰褰曠簿璁 6. Linux鏂囦欢鍙...
  • linux瀛︿範鍒板簳瑕佸涔犱粈涔?
    绛旓細绗竴闃舵缁撴潫闇瑕佸甯堟垨璁插笀瀵规暣浣撹绋嬭繘琛屽洖椤剧浜岄樁娈碉細linux绯荤粺绠$悊杩涢樁1. Linux瀹氭椂浠诲姟2. Linux鐢ㄦ埛绠$悊3. Linux纾佺洏涓庢枃浠剁郴缁(涓)4. Linux纾佺洏涓庢枃浠剁郴缁(涓笅)5. Linux涓夊墤瀹涔媠ed鍛戒护绗笁闃舵锛歀inux Shell鍩虹1. Shell缂栫▼鍩虹12. Shell缂栫▼鍩虹2343. Linux涓夊墤瀹箣awk鍛戒护绗洓闃舵锛歀inux...
  • Linux杩愮淮闇瑕佹帉鎻″摢浜涘熀纭鐭ヨ瘑
    绛旓細2. Xshell杩滅▼缃戠粶杩炴帴Linux銆佸熀纭浼樺寲銆佽繙绋嬭繛鎺ョ綉缁滃熀纭銆乆shell杩炴帴鏁呴殰鎺掗敊銆佹牳蹇冨熀纭鍛戒护璁茶В 3. Linux绯荤粺鏍稿績閫氶厤绗︿綋绯汇涓夊墤瀹锛坓rep,sed,awk锛夋牳蹇冩鍒欒〃杈惧紡绮捐鍙婁紒涓氱骇妗堜緥瀹炴垬妯℃嫙绮捐 4. Bash鏍稿績绗﹀彿銆佸揩鎹烽敭銆侀氶厤绗﹁瑙 5. Linux鐩綍銆丗HS\鎸傝浇銆佹枃浠跺睘鎬с佹牳蹇冪洰褰曠簿璁 6. Linux鏂囦欢鍙...
  • 濡備綍瀛︿範linux
    绛旓細娌″熀纭鐪嬨婇笩鍝ョ殑Linux绉佹埧鑿溿嬫瘮杈冪棝鑻︼紝鍐呭寰堝銆2銆佷簡瑙d箣鍚庯紝鍦ㄨ嚜宸辩數鑴戜笂寮勪釜铏氭嫙鏈猴紝瑁呬笂linux绯荤粺锛坮edhat鎴杣buntu閮借锛夈備笓鏀汇婇笩鍝ョ殑Linux绉佹埧鑿溿嬨傚綋浣犳妸杩欐湰涔︽敾涓嬫潵鏃讹紝鎵嶇煡閬撳師鏉鍛戒护琛骞朵笉鍙曪紝鑷繁鎵撶潃鎵撶潃灏卞緢闀垮暒銆傚linux鏈涓昏闈犲疄璺碉紝涓嶅疄璺碉紝鍙湅涔﹀浣犳病濂藉鐨勫摝銆傝嚜宸卞湪...
  • 鎯冲涔Linux缂栫▼,闇瑕佸涔犲摢浜涘熀纭?
    绛旓細2. Xshell杩滅▼缃戠粶杩炴帴Linux銆佸熀纭浼樺寲銆佽繙绋嬭繛鎺ョ綉缁滃熀纭銆乆shell杩炴帴鏁呴殰鎺掗敊銆佹牳蹇冨熀纭鍛戒护璁茶В 3. Linux绯荤粺鏍稿績閫氶厤绗︿綋绯汇涓夊墤瀹锛坓rep,sed,awk锛夋牳蹇冩鍒欒〃杈惧紡绮捐鍙婁紒涓氱骇妗堜緥瀹炴垬妯℃嫙绮捐 4. Bash鏍稿績绗﹀彿銆佸揩鎹烽敭銆侀氶厤绗﹁瑙 5. Linux鐩綍銆丗HS\鎸傝浇銆佹枃浠跺睘鎬с佹牳蹇冪洰褰曠簿璁 6. Linux鏂囦欢鍙...
  • 扩展阅读:linux vi ... linux grep查找关键字 ... linux xcopy ... linux tar ... awk print ... sed linux ... linux cut ... linux grep c ... linux case ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网