如何为每个用户在特定位置创建文件?

如何为每个用户在特定位置创建文件?

我在一所学校运行 Ubuntu LTSP 设置,大约有 60 个独立用户。有时,我们需要在每个用户的帐户中共享文档、创建目录或放置配置文件。显然,一次只做一件事效率不高。

我知道我可以使用以下命令将文件放置在每个用户的主目录中:

ls /home/ | xargs -n 1 sudo cp -i <file>

但是如果我需要把它放在特定的地方,比如,该怎么办 ~/.config/autostart

~/Desktop/foo/或者如果我需要为每个用户创建目录怎么办?

感谢您的帮助,如果有人可以为我推荐资源以便我进一步学习,那就太好了。

答案1

cp有一个选项可以单独指定目标目录:-t。因此你可以这样做:

for u in /home/*
do
    sudo cp -t "$u/.config/autostart" -i <file>
    sudo mkdir "$u/Desktop/foo"
done

一般来说,没有简单的方法来管理用户的主目录。您可以在首次创建主目录时指定在其中创建的内容,但此后,每个用户都只能自己创建主目录。

然后,您必须使用某种形式的脚本。在这种情况下,我使用了 shell 脚本。查看 TLDP 指南猛击使用 Bash 编写脚本. 即使使用 Puppet 这样的工具,这不是一件容易的事

相关内容