Linux命令是对Linux系统进行管理的命令。对于Linux系统来说,无论是中央处理器、内存、磁盘驱动器、键盘、鼠标,还是用户等都是文件,Linux系统管理的命令是它正常运行的核心,与之前的DOS命令类似。linux命令在系统中有两种类型:内置Shell命令和Linux命令。本文主要介绍Linux newgrp 命令。

1、命令简介

newgrp:用于启动一个新的 shell 进程,其中的用户组(group)会被更改为新指定的用户组。这允许用户在不注销并重新登录的情况下,切换到不同的用户组。

newgrp 命令常用于在工作中需要切换用户组的情况下,以方便用户访问一些受限制的文件或目录。

2、命令语法

newgrp [-] [group]

3、命令描述

newgrp 用于在登录会话期间更改当前组 ID。如果提供了可选的 -标志,用户的环境将被重新初始化,就好像用户重新登录一样;否则,当前环境,包括当前工作目录,保持不变。

newgrp 将当前的真实组 ID 更改为指定的组名,或者如果未提供组名,则更改为 /etc/passwd 中列出的默认组。newgrp 还会尝试将该组添加到用户组集中。如果不是 root 用户,并且用户没有密码(如果该用户在影子密码文件 /etc/shadow 中有条目,或者在其他情况下在 /etc/passwd 中没有密码),而该组有密码,那么用户将被提示输入密码。如果用户未列为该组的成员并且该组有密码,用户将被拒绝访问。如果组密码为空且用户未列为成员,则用户将被拒绝访问。

如果 /etc/gshadow 中有该组的条目,则将从该文件中获取该组的成员列表和密码,否则将考虑 /etc/group 中的条目。

4、使用示例

1)切换到另一个组

newgrp groupname

注意:将当前用户的登录组切换为 groupname,用户将被提示输入密码以进行身份验证。这将更改用户的有效组 ID 为指定的组。

2)重新初始化环境

newgrp -

使用 - 标志,会重新初始化用户的环境,就好像用户刚刚登录一样。这将包括更改当前工作目录。

3)查看当前登录组

要查看当前用户的登录组,可以使用 id 命令:

id -gn

注意newgrp 命令通常用于在特定组上执行命令,以便访问该组的文件或资源,而不是常规的用户登录任务。

推荐文档