Lendo um pouco descobri (sem fonte bibliográfica) que o passwd não aceita parâmetros/redirecionamentos por segurança, com um pouco de pesquisa encontrei aqui http://en.kioskea.net/faq/790-changing-password-via-a-script um meio de realizar esta alteração
Em meu teste ficou assim
senha='senhanova'
echo -e "${senha}\n${senha}" | ( passwd usuario )
Este tipo é muito importante em um exemplo que é necessário cadastrar 300 novos usuários com senhas aleatórias, você pode gerar um arquivo contendo o nome do usuário e a senha, e realizar o cadastro e a modificação da senha sem interação.