gpt4 book ai didi

bash - 从 LDAP 将用户添加到 linux box

转载 作者:行者123 更新时间:2023-11-29 09:22:27 25 4
gpt4 key购买 nike

我收到了一个请求,要将大约 100 个用户添加到 linux box,这些用户已经在 ldap 中,所以我不能只使用 newusers 并将它指向一个文本文件。另一个管理员负责 ldap 部分,所以我所要做的就是创建所有主目录,并在他将用户添加到框中后将​​它们 chown 给正确的用户。创建目录不是问题,但我想要一个更优雅的脚本来将它们发送给正确的用户。我目前拥有的基本上是这样的

chown -R testuser1 testgroup1 /home/tetsuser1; chown -R testuser2 testgroup2 /home/testgroup2; chown -R testsuser3 testgroup1 /home/testuser3

基本上我接受了将用户名和组名弹出到excel中的请求,在前面添加了一列“chown -R”,然后添加了一列“/”,将用户名列复制并粘贴到它后面,然后然后添加一列“;”并将其拖到倒数第二行。将它弹出到记事本中,进行了一些快速查找和替换,不到一分钟我就完成了请求,并感到悲伤的空虚感。我知道这是一个非常贫民窟的方法,我试图摆脱使用 excel 以避免学习新的脚本技术,所以这是我真正的问题。

tl;dr 我制作了 100 个主目录并将它们分给正确的用户,但它很难看。下面是实际问题。

你有一个名为 idlist 的文件,看起来像这样(只有 1000 个用户和真实的用户名和组)

testuser1 testgroup1
testuser2 testgroup2
testuser3 testgroup1

编写一个脚本,为所有用户创建主目录,并将创建的目录更改为正确的用户和组。为了制作目录,我使用了以下内容(也请随意批评/纠正我。)

var= 'cut -f1 -d" " idlist' (I used backticks not apostrophes around the cut command)
mkdir $var

最佳答案

#!/bin/bash
# should work in any POSIX shell
while read user group
do
mkdir "/home/$user"
chown "$user:$group" "/home/$user"
done < idlist

关于bash - 从 LDAP 将用户添加到 linux box,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2838951/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com