kau*_*tta 1 unix shell awk cal
当我cal | tail -6在我的unix机器上尝试" "时,我得到了 -
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30
Run Code Online (Sandbox Code Playgroud)
但当我尝试" cal | tail -6 | awk '{print $7}'"时,我得到 -
10
17
24
Run Code Online (Sandbox Code Playgroud)
3在哪里?我的要求基本上都是工作日,即2,3,4,5和6列.但由于" cal" 的奇怪行为,我的输出错误
第一行中只有3个以空格分隔的列. cal工作完全正确,你不明白是如何awk工作的.就awk您而言,您的第一行中没有第7列,因为它会引起对空白分隔列的注意,而不是固定宽度列.
快速谷歌搜索显示你可以使用
BEGIN { FIELDWIDTHS = "3 3 3 3 3 3 3" }
Run Code Online (Sandbox Code Playgroud)
在你的awk脚本中.
| 归档时间: |
|
| 查看次数: |
1150 次 |
| 最近记录: |