1
讓file.txt
問題是下列文件AWK - 如果有else語句
1
2
3
5
6
7
15
16
17
19
20
23
24
我試圖寫一個awk
命令,打印數字,它缺少的範圍。當範圍只包含一個數字時,則應打印此數字。預期的輸出是
4
8-14
18
21-22
This post幾乎做的工作,我與一個襯墊
awk '$1!=p+1{print p+1"-"$1-1}{p=$1}' file.txt
4-4
8-14
18-18
21-22
我試圖修改它
awk 'if ($1!=p+1){if (p+1!=$1-1) {print p+1"-"$1-1} else {print p+1} }{p=$1}' file.txt
但預計它不工作。我似乎誤解了if-else語法。我究竟做錯了什麼?
閱讀第一夫婦的書有效AWK編程頁,第4版,由阿諾德·羅賓斯來解決這個問題。然後閱讀本書的其餘部分:-)。 –