Tenho um erro estranho que não consegui encontrar nada sobre isso. Eu queria alterar o comentário do usuário com o seguinte comando.
$ sudo usermod -c "New Comment" user
Isso funcionará enquanto estiver conectado a um servidor, mas eu quero automatizá-lo em mais de 20 servidores. Normalmente, sou capaz de usar uma lista e fazer um loop nos servidores e executar um comando, mas, neste caso, recebo um erro.
$ for i in `cat servlist` ; do echo $i ; ssh $i sudo usermod -c "New Comment" user ; done
serv1
Usage: usermod [options] LOGIN
Options:
lists usermod options
serv2
Usage: usermod [options] LOGIN
Options:
lists usermod options
.
.
.
Quando executo esse loop, ele lança um erro como se estivesse usando o comando incorretamente, mas ele funcionará perfeitamente em um único servidor.
Olhando através das páginas man ssh eu tentei -t
e -t -t
bandeiras mas aqueles não funcionou.
Eu usei com sucesso perl -p -i -e
dentro de um loop semelhante para editar arquivos.
Alguém sabe um motivo pelo qual não consigo fazer um loop?