sg
スポンサーリンク
何するコマンド?
自分のグループを一時的に変更して(指定したグループで)コマンドを実行するときに使うコマンド
書き方
sg [オプション] [グループ名] [コマンド]
もしくは
sg [オプション] [グループ名] -c [コマンド]
オプション
| オプション | 説明 |
|---|---|
| - | ログインし直した状態にするよ(コマンド実行時の環境は引き継がないよ) |
補足事項
例えば
sg root ls
を実行すると「root」グループとして「ls」コマンドが実行されます。
実行するコマンドの前の「-c」は、指定しても、しなくても、どちらでも かまいません。
sg root ls
も
sg root -c ls
も同じ結果になります。
実行するコマンドを指定しないで
sg root
のようにグループのみを指定した場合は「newgrp」コマンドと同じ動きをします。
といいますか、そもそも「sg」コマンドは「newgrp」コマンドのエイリアス(別名)なのです。
私の環境で
ls -l /usr/bin/sg
を実行したところ
lrwxrwxrwx. 1 root root 6 1月 2 11:10 /usr/bin/sg -> newgrp
と表示されました。
見事に「newgrp」を指していますね。
ただし「newgrp」ではコマンドは実行できないようです。
newgrp root ls
を指定しても「ls」コマンドの実行結果は表示されませんでした。
素直に
・「newgrp」コマンド→一時的にグループを変えるときに使う
・「sg」コマンド→指定グループでコマンドを実行するときに使う
と使い分けた方が良さそうです。
