I have an odd error that I have been unable to find anything on this. I wanted to change the user comment with the following command.
$ sudo usermod -c "New Comment" user
This will work while logged onto a server but I want to automate it across 20+ servers. Usually I am able to use a list and loop through the servers and run a command but in this case I get a error.
$ 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 . . .
When I run this loop it throws back an error like I am using the command incorrectly but it will run just fine on a single server.
Looking through the ssh man pages I did try
-t -t flags but those did not work.
I have successfully used
perl -p -i -e within a similar loop to edit files.
Does anyone know a reason I am unable to loop this?