問題出在之前找到的一個使用awk合并特征相同的行的教程里,以下鏈接:
http://blog.chinaunix.net/uid-10540984-id-3022733.html
主要問題在這:
awk '{if($1==x){i=i" "$2}else{if(NR>1){print i};i=$0};x=$1;y=$2}' file <(echo)
主要是后邊<(echo)
在不加<(echo)情況下,最后一個i不會輸出,也就是說這個 <(echo)代替了END{print i}的作用,后來又嘗試<(ls)發現在輸出結果里追加了ls的結果,明白了這是在輸出結果末尾追加內容。
后來以為這個echo會將未print的變數都輸出,但是試驗了一下并不是這樣。當最后同時存在之前輸出用的i和新建立的b變數時,只會輸出i。
b并沒有輸出。
所以這個 <(echo)具體原理是什么,一直沒搞明白,有無大佬可以指點一二,謝謝!
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/196085.html
標籤:非技術區
