我的客户让我将一些文件夹部署到他的客户网站的一堆主目录中.我使用
Bash脚本执行此操作,但最终使用root帐户权限.
如何创建一个Bash脚本,将/ home / user下的每个文件夹(不是隐藏文件或文件夹),获取该文件夹的用户和组所有权,然后执行chown -R {user}.{group} / home /用户?
服务器正在运行CentOS Linux.
解决方法
我认为你问的方式有点倒退.您不想获取每个文件夹然后找到该用户,而是希望获取用户并找到其主文件夹.
#!/bin/bash while IFS=':' read -r login pass uid gid uname homedir comment; do echo chown $uid:$gid "$homedir"; done < /etc/passwd
您需要删除回声当然,您需要使用root权限运行它.我也总是建议使用while循环而不是我自己的for循环.您可以使用/ etc / passwd保存此循环以执行任何操作.