我有內容的文件f1.txt:使用GAWK解析:如何留住一些變量的值以外呆子
192.168.100.253:34611 69.171.228.46:80 5 2426 7 901 12 3327
192.168.100.253:34610 69.171.228.46:80 5 1068 6 626 11 1694
192.168.100.253:46808 69.171.224.24:80 4 470 5 563 9 1033
然後,我使用了徒勞無功聲明如下:
gawk 'NR==1 {node1 = $1;node2 = $2}' f1.txt
echo "node" $node1
我期待node1 = 192.168.100.253:34611和node2 = 69.171.228.46:80。我想用一個FS值更多的gawk語句作爲:,以進一步獲得我可以在腳本中稍後使用的ip add和port no。但是node1和node2本身的值不會被存儲。這些像C中的自動變種嗎?我如何解析這個以保留node1和node2值?
任何幫助將不勝感激。提前致謝。
考慮:'節點1 = 192.168.100.253:34611',您可以用'回聲$ {節點1%:*}'來獲得IP地址 '192.168.100.253'和'回聲$ {節點1#* :}'得到端口號 '34611'。 –
不需要運行'gawk'兩次; '節點=($(gawk'NR == 1 {print $ 1,$ 2}'f1.txt))'Then'node1 = $ {nodes [0]}'和'node2 = $ {nodes [1]}''。 – chepner
對,@chepner!我沒有想過shell數組。 – mpe