我試圖輸出文件看起來像這樣(更多在http://pastebin.com/dpBAY8Sb):當值可能是數字或字符串時,如何將列與Perl的printf對齊?
10.1.1.1 100 <unknown> <unknown> <unknown> <unknown> <unknown>
72.12.148.186 94 Canada Hamilton ON 43.250000 -79.833300 0.00
72.68.209.149 24 United States Richmond Hill NY 40.700500 -73.834500 611.32
72.192.33.34 4 United States Rocky Hill CT 41.657800 -72.662700 657.48
我找不到如何輸出我必須有一個浮動Poing的和格式化列之間的距離進行格式化。我目前的代碼看起來像這樣。
if (defined $longitude){
printf FILE ("%-8s %.6f","",$longitude);
}else{
$longitude = "<unknown>";
printf FILE ("%-20s ",$longitude);
}
額外""
拋出了整列,它看起來像這樣(更多在http://pastebin.com/kcwHyNwb)。
10.1.1.1 100 <unknown> <unknown> <unknown> <unknown> <unknown>
72.12.148.186 94 Canada Hamilton ON 43.250000 -79.833300 0.00
72.68.209.149 24 United States Richmond Hill NY 40.700500 -73.834500 571.06