Altere ls | para ls -l | .
Você evidentemente aliased ls to ls -l em seu shell (possivelmente uma função e / ou outras opções); use type ls para ver o que você está realmente executando. Os scripts não recebem aliases, por isso está apenas executando o% normalls, com sua única coluna de saída.