【发布时间】:2022-11-03 23:57:15
【问题描述】:
有没有办法我们(超级管理员)可以在 Perforce 中使用他们的电子邮件地址创建多个用户,无论是使用命令行还是使用脚本(python 或 shell)?
Shell 脚本将是首选。
【问题讨论】:
标签: perforce
有没有办法我们(超级管理员)可以在 Perforce 中使用他们的电子邮件地址创建多个用户,无论是使用命令行还是使用脚本(python 或 shell)?
Shell 脚本将是首选。
【问题讨论】:
标签: perforce
使用p4 user -o 命令输出用户规范,并使用p4 user -i(如果您的服务器配置为需要超级用户权限来创建新用户,则使用-f 标志)来保存它。
电子邮件地址默认为user@client,因此在不实际编辑表单的情况下设置电子邮件地址的一种简单方法是通过@987654325 将电子邮件域指定为客户端名称(您不需要创建实际的客户端规范) @ 全局标志,例如:
C:Perforce est>p4 -c gmail.com user -o fred
# A Perforce User Specification.
#
# User: The user's user name.
# Type: Either 'service', 'operator', or 'standard'.
# Default: 'standard'. Read only.
# Email: The user's email address; for email review.
# Update: The date this specification was last modified.
# Access: The date this user was last active. Read only.
# FullName: The user's real name.
# JobView: Selects jobs for inclusion during changelist creation.
# Password: If set, user must have matching $P4PASSWD on client.
# AuthMethod: 'perforce' if using standard authentication or 'ldap' if
# this user should use native LDAP authentication.
# Reviews: Listing of depot files to be reviewed by user.
User: fred
Email: fred@gmail.com
FullName: fred
将此输出传送到p4 user -i -f 可以保存用户规范:
C:Perforce est>p4 -c gmail.com user -o fred | p4 user -i -f
User fred saved.
C:Perforce est>p4 users fred
fred <fred@gmail.com> (fred) accessed 2022/09/21
如果你需要编辑实际的表单(例如设置FullName),你总是可以使用像sed这样的文本编辑工具,但更简单的选择是使用内置的--field全局标志,它可以让你在命令输出中设置单个规范字段:
C:Perforce est>p4 --field Email=fred@bedrock.gov --field "FullName=Fred Flintstone" user -o fred
User: fred
Type: standard
Email: fred@bedrock.gov
Update: 2022/09/21 08:50:34
Access: 2022/09/21 08:50:34
FullName: Fred Flintstone
AuthMethod: perforce
同样,要实际保存用户规范,您只需将其传送到p4 user -i:
C:Perforce est>p4 --field Email=fred@bedrock.gov --field "FullName=Fred Flintstone" user -o fred | p4 user -if
User fred saved.
C:Perforce est>p4 users fred
fred <fred@bedrock.gov> (Fred Flintstone) accessed 2022/09/21
【讨论】:
p4 group 编辑组,就像使用p4 user 编辑用户一样。
p4 group <group_name> --field "Users=<user.name>" 管道 p4 --field Email=fred@bedrock.gov --field "FullName=Fred Flintstone" user -o fred | p4 user -if ?