awk で斜めだけを取得するには？

[code]

    1 2 3
    4 5 6
    7 8 9
    
[/code]

というデータ(`aa.txt`とします)があった時、  
awkだけを使うという制約のもと、  
斜めに1,5,9(または3,5,7)を取得するにはどうすればいいでしょうか？  
私は

[code]

    awk 'NR==i{print $i}' aa.txt
    
[/code]

をループすればできると思ったのですが、うまくできませんでした



[code]

     awk '{print $NR}' aa.txt
     awk '{print $(NF-NR+1)}' aa.txt
    
[/code]

* * *

`NR`は処理している行の先頭からの番号(上から何行目か)が代入されている組み込みの変数です。

`NF`は処理している行のフィールド数(列の数)が代入されている組み込みの変数です。

`$`はフィールドを参照する演算子で、よく`$1`(=1列目)とか`$2`(=2列目)というふうに使われますが、`$(式)`という形で数字だけでなく式を与えることもできます。(※ひとつ目のコードは`()`を省略しています)

