Para citar a especificação POSIX para o awk:
When an ERE token appears as an expression in any context other than as the right-hand of the
~or!~operator or as one of the built-in function arguments described below, the value of the resulting expression shall be the equivalent of:
$0 ~ /ere/
Isso (combinado com o padrão de ação para { print } ) é por que você pode usar awk como um grep substituto apenas fazendo awk '/b/' <file .
Então, a resposta é apenas "está definido para funcionar dessa maneira". /ere/ é definido para significar $0 ~ /ere/ , exceto em determinadas circunstâncias, e /ere/ ~ $1 não é uma das circunstâncias excepcionais, por isso é avaliado como ($0 ~ /ere/) ~ $1 .