1
所以基本上我有一個文件與管道分隔線,我想剪切字段的內容,當他們超過一定的長度,所以我已經設置了一個最大長度爲每個領域。 我使用陣列以存儲每個字段的最大長度值:使用索引數組作爲gawk輸入數據的格式映射
gawk -F"|" -- '
BEGIN {
map[1]=10
map[2]=20
map[3]=60
map[4]=60
map[5]=3
map[6]=60
map[7]=3
OFS="|"
}
{
for(i = 1; i <= NF; i++) {
if (length($i) > map[$i]) {
$i = substr($i, 1, map[$i])
}
}
print;
}
'
這裏的問題是,有一些錯誤的陣列,該項目全部返回null或0,使所有比較if (length($i) > map[$i])
返回true,它將清空所有字段, 我的數組有什麼問題?
完成,現在運行它,讓我們看看:) thx – JBoy