Shell脚本:一键为所有用户主目录创建dir1和dir2目录,附代码详解及注意点
以下是使用Shell脚本在每个用户的主目录下创建`dir1`和`dir2`目录的代码: ```bash #!/bin/bash # 获取所有用户的主目录列表 user_homes=$(getent passwd | cut -d: -f6) # 遍历每个用户的主目录 for home in $user_homes; do # 检查主目录是否存在 if [ -d "$home" ]; then # 在主目录下创建dir1目录 mkdir -p "$home/dir1" # 在主目录下创建dir2目录 mkdir -p "$home/dir2" fi done ``` 代码解释 1. `getent passwd | cut -d: -f6`:通过`getent passwd`获取系统中所有用户的信息,然后使用`cut`命令以冒号为分隔符,提取出第6列,即用户的主目录。 2. `for home in $user_homes; do ... done`:遍历每个用户的主目录。 3. `if [ -d "$home" ]; then ... fi`:检查主目录是否存在,如果存在则执行后续的创建目录操作。 4. `mkdir -p "$home/dir1"`和`mkdir -p "$home/dir2"`:使用`mkdir -p`命令在主目录下创建`dir1`和`dir2`目录,`-p`选项可以确保如果父目录不存在,会自动创建。 额外注意的逻辑点 1. 运行此脚本可能需要root权限,因为访问某些用户的主目录可能需要更高的权限。 2. 如果某些用户的主目录已经存在`dir1`或`dir2`目录,`mkdir -p`命令不会报错,也不会覆盖已有的目录。 3. 要确保脚本具有可执行权限,可以使用`chmod +x script.sh`命令赋予脚本执行权限。 ######[AI写代码神器 | 432点数解答 | 2025-06-14 15:28:30]
- Linux文件查找、创建、压缩与解压操作全流程指南(阿里通义 | 687点数解答 | 2024-11-02 17:27:51)214
- Linux系统下文件查找、创建、压缩与解压的实用命令集(字节豆包 | 36点数解答 | 2024-11-02 17:44:11)207
- Linux系统:.zip与.gz文件操作、目录创建及压缩解压全攻略(讯飞星火 | 417点数解答 | 2024-11-02 17:44:33)207
- Linux 操作指南:目录文件创建、压缩解压及目录树分析全流程(阿里通义 | 732点数解答 | 2024-11-02 17:49:12)279
- Linux 系统用户、组及文件操作全流程实践(字节豆包 | 1142点数解答 | 2026-03-20 17:29:38)34
- Python 实战:创建特定目录与文件并精准设置权限及错误处理(字节豆包 | 251点数解答 | 2024-12-17 14:20:25)241
- 优化代码:安全高效解锁设备 Bootloader 与刷入 Recovery 镜像(DeepSeek | 345点数解答 | 2025-02-21 22:47:48)182
- 📊 C++ 高效求解社交网络用户关注量与粉丝量(图论出度入度基础)(DeepSeek | 1799点数解答 | 2026-04-10 21:44:39)16
- 深度揭秘 Oracle Workarea Size Policy:参数调优助力数据库性能飞升(阿里通义 | 372点数解答 | 2024-05-13 10:54:45)247
- Linux 实操:从主机名设置到文件操作、压缩解压及命令历史运用全流程指南(字节豆包 | 699点数解答 | 2024-12-30 15:54:38)302
- Java 创建 HTTP POST 请求实现文件上传:代码示例与注意要点 (字节豆包 | 300点数解答 | 2024-12-06 16:07:20)350
- Linux 开发:将 /test/a 目录建立软链接到 /test/b 目录的完整命令(百度文心 | 194点数解答 | 2023-11-09 18:48:38)296