Ho uno strano errore che non sono stato in grado di trovare nulla al riguardo. Volevo cambiare il commento dell'utente con il seguente comando.
$ sudo usermod -c "New Comment" user
Funzionerà quando si accede a un server ma voglio automatizzarlo su oltre 20 server. Di solito sono in grado di utilizzare un elenco e scorrere i server ed eseguire un comando, ma in questo caso viene visualizzato un errore.
$ 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 eseguo questo ciclo, viene restituito un errore come se stessi usando il comando in modo errato, ma funzionerà perfettamente su un singolo server.
Guardando attraverso le pagine man di ssh ho provato -te le -t -tbandiere ma quelle non hanno funzionato.
Ho usato con successo perl -p -i -eall'interno di un ciclo simile per modificare i file.
Qualcuno sa un motivo per cui non sono in grado di eseguire questo ciclo?