newgrp 命令

用途

更改用户的实型组标识。

语法

newgrp [ - ] [ -l] [ ]

描述

newgrp 命令更改用户的实型组标识。 运行该命令时,系统将使您处于一个新的 shell 中,并且将您的实型组名称更改为用 Group 参数指定的组。 缺省情况下,newgrp 命令将您的实型组更改为 /etc/passwd 文件中所指定的组。

注: newgrp 命令不会从标准输入中获取输入,并且无法从脚本中运行。

newgrp 命令只标识组名称,不标识组标识号。 您的更改仅对当前会话有效。 您只能将您的实型组名称更改为您已经成为其成员的组。 如果您是 root 用户,可以将您的实型组更改为任意组(不管您是不是该组的成员)。

注: 运行 newgrp 命令时,系统始终将 shell 替换为新的 shell。 不管命令是否成功,该命令都会替换 shell。 因此,命令不会返回错误代码。

标志

描述
- 将环境更改为新组的登录环境。
-l 表示和 - 标志相同的值。

安全性

访问控件:此命令应作为程序安装在可信计算库 (TCB) 中。 带有 setuid (SUID) 位设置的 root 用户应该拥有此命令。

退出状态

如果 newgrp 命令成功地创建了一个新的 shell 执行环境,那么不管组标识是否更改成功,退出状态将是当前 shell 的退出状态。 否则,返回以下退出值:

描述
> 0 发生错误。

示例

  1. 要将当前 shell 会话的实际组标识更改为admin,请输入:
    newgrp admin
  2. 要将真实组标识更改回原始登录组,请输入:
    newgrp

文件

描述
   /etc/passwd 表示密码文件;包含用户标志。