awk '{$1=$1}1' OFS="\t" students.txt
Prova de Conceito
$ awk '{$1=$1}1' OFS="\t" students.txt
Surname Forename MSc Stream Date of Birth
Smith John IT 15.01.1986
Taylor Susan IT 04.05.1987
Thomas Steve MIT 19.04.1986
Explicação
O motivo pelo qual não funcionou é porque awk
requer que um dos campos seja alterado antes de aplicar o novo separador de campo de saída. A solução para esse defeito (IMHO) é apenas definir um campo para si mesmo, portanto, o $1=$1
Para esse tipo de alteração simples, é melhor usar tr
ou sed
tr -s ' \t' '\t*' < students.txt
sed 's/[[:space:]]\+/\t/g' students.txt