Eu usaria diff
e cat -v filename
para ver quais são as diferenças entre os scripts que funcionam e os que não funcionam. Assumindo que o segundo "postgres" é uma senha, pode haver algo invisível que o impeça de ser reconhecido - por exemplo, uma linha de controle-M (CR) do Windows que está sendo usada em uma máquina * Nix.