「沒有足夠的論據,以滿足格式字符串」的錯誤我創建了一個腳本,從我們的Unix服務器獲取數據,但我得到了以下錯誤:AWK:腳本
awk: cmd. line:8: (FILENAME=- FNR=2) fatal: not enough arguments to satisfy format string
`|%-17s|%-16s|%-15s|'
^ran out for this one
下面是完整的腳本:
#!/bin/sh
export TERM=xterm
ipath=/usr/local/nextone/bin
date=$(date +"%Y%m%d%H%M")
ifile="$(date '+/var/EndpointUsage_%I-%M-%p_%d-%m-%Y.csv')"
"$ipath"/cli iedge list | awk '
BEGIN { print "|-----------------|------------------|------------------|";
printf "|%-18s|%-17s|%-16s|\r\n","Registration ID", "Port", "Ongoing Calls"
}
/Registration ID/ { id = $3; next }
/Port/ { port = $3 ; next }
/Ongoing Calls/ {print "|-------------------|-----------------|------------- -----|";
printf "|%-18s|%-17s|%-16s|\r\n",id,port,$3 }
END{
print "|------------------|------------------|------------------|";
}'>> "$ifile"
任何人都可以請幫助我,我該如何解決這個錯誤?
更改後列顯示正確,但Port
列沒有任何數據。它應該有0或者其他端點有1個2端口號。
|-----------------|------------------|------------------|
|Registration ID |Port |Ongoing Calls |
|-------------------|-----------------|------------------|
|-------------------|-----------------|------------------
|CC_XXXXXX_01_0 | |174 |
|-------------------|-----------------|------------------|
你問了一個問題,你得到了[答案](http://stackoverflow.com/a/41192985/1745001)。現在你已經遇到了你的下一個問題,你已經改變了你的問題,直到它與你的原始問題和相關答案無關,並且現在正在尋求這個完全不同的新問題的幫助。不要這樣做。把這個問題放回到它的開始,標記你接受的答案,併發佈一個新的問題,如果你必須,但首先要自己解決它。 –
我同意@EdMorton。問一個不同的問題實際上會更好,鏈接到這個問題,以便未來的讀者能夠從特定問題的特定答案中受益。查看[tour](https://stackoverflow.com/tour)以獲取更多有用的提示。另外,在您的新問題中,請顯示輸入文件,代碼,輸出結果以及您期望的輸出結果 - 這樣您可以更快速地獲得更高質量的答案。謝謝! – cxw