私はこれについて何も見つけることができなかったという奇妙なエラーがあります。以下のコマンドでユーザーコメントを変更したいのですが。
$ sudo usermod -c "New Comment" user
これはサーバーにログオンしていても機能しますが、20以上のサーバーで自動化したいと考えています。通常、リストを使用してサーバーをループし、コマンドを実行できますが、この場合はエラーが発生します。
$ 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
.
.
.
このループを実行すると、コマンドを誤って使用しているようなエラーが返されますが、単一のサーバーでは問題なく実行されます。
sshのmanページを調べて-t
、-t -t
フラグを立ててみましたが、うまくいきませんでした。
perl -p -i -e
同様のループ内でファイルを編集することに成功しました。
私がこれをループできない理由を誰かが知っていますか?