使用できます:usermod -a -G grouptoadd username
なぜ -a -G はOKなのに -aG はダメなのかは思ったほど明らかではないので、説明しようと思います:
-G オプションは、1 つの値または値のリストのいずれかを取ります。値が 1 つの場合、値は -GVALUE のように指定できます。これは、オプションと値の間にスペースを入れる必要がないためです。これは一般的な方法です。
システムに a というグループがある場合、 -Ga の呼び出しはあいまいになります。ユーザーにグループを 1 つだけ持たせますか? -a と -G を呼び出していますか?では、「a」は -G に対する値ですか?残りの値 (-G まで) はどこにありますか?また、1 文字のオプションを他の 1 文字のオプションの前に置くことも一般的です。つまり -xy ==-yz です。しかし、オプションの 1 つが VALUE のような単一の値、または VAL1、Val2、val4 などの多くの値のいずれかを取ることができる場合、これはあいまいです。
したがって、コマンドを FAILSAFE にして、すべての入力に対して適切に機能させるには、-a を -G から分離する必要があります
man usermod
から :
名前
usermod - ユーザー アカウントを変更する
あらすじ
ユーザーモード [オプション] ログイン
説明
usermod コマンドは、システム アカウント ファイルを変更して、コマンド ラインで指定された変更を反映します。
オプション
usermod に適用されるオプション コマンドは:
-
-a, --append
ユーザーを補助グループに追加します (秒)。 -G とのみ使用 オプション。
-
...
-
-G, --groups GROUP1[,GROUP2,...[,GROUPN]]]
ユーザーがメンバーでもある補助グループのリスト。各グループはコンマで区切られ、間に空白はありません。グループは、-g で指定されたグループと同じ制限を受けます。 オプション。
ユーザーが現在リストされていないグループのメンバーである場合、ユーザーはグループから削除されます。この動作は -a で変更できます オプションで、ユーザーを現在の補助グループ リストに追加します。
-
...