簡體   English   中英

在awk的同一行中打印數組內容

[英]Printing array contents in the same line in awk

我有一個腳本,需要在上一個打印語句的同一行中打印數組內容。 這里array is dynamic in size ,我已經有一個print語句,它顯示了列的輸出。

例如:讓具有3個內容的數組(arr [1] = 2,arr [2] = 4,arr [3] = 6),min = 100,max = 200。 我有打印語句打印列明智的結果。

gawk '{
  ...
  ...
print "Min:" min "\tMax:" max 
for (itr in arr)
print arr[i] " "

}' script.txt

預期產量:

Min:100  Max:200  2 4 6 

我的輸出:

Min:100 Max:200
2
4
6

請支持我一種方法,如何在先前的打印結果中附加數組內容。

嘗試使用echo,它具有-n選項,以最后跳過換行。

gawk '{
  ...
  ...
echo -n "Min:" min "\tMax:" max 
for (itr in arr)
echo -n arr[i] " "

}' script.sh

另一種方法

gawk '{
  ...
  ...
printf "Min:" min "\tMax:" max 
for (itr in arr)
printf arr[i] " "

}' script.sh

請參考echo文檔。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM