Shell脚本:用户密码验证、目录文件操作全流程实现及注意要点
1. 验证用户名和密码的脚本 ```bash #!/bin/bash # 提示用户输入用户名 read -p "请输入用户名: " username # 判断用户名是否存在 if id "$username" &>/dev/null; then # 用户名存在,提示用户输入密码 read -s -p "请输入密码: " password echo # 验证密码是否满足条件:长度大于8位、包含大小写字母和特殊字符 if [[ ${#password} -gt 8 && $password =~ [A-Z] && $password =~ [a-z] && $password =~ [!@#$%^&*(),.?":{}|<>] ]]; then echo "密码验证通过" else echo "密码不满足要求,请确保长度大于8位,包含大小写字母和特殊字符" fi else echo "用户名不存在" fi ``` 2. 操作目录和文件的脚本 ```bash #!/bin/bash # a. 创建一个名为“my_folder”的目录 mkdir my_folder # b. 在该目录下创建一个名为“my_file.txt”的文件 touch my_folder/my_file.txt # c. 向“my_file.txt”文件中写入一些文本,例如:“Hello, world!” echo "Hello, world!" > my_folder/my_file.txt # d. 列出“my_folder”目录下的所有文件和子目录 ls my_folder # e. 更改“my_file.txt”文件的权限,使其只有所有者可以读取和写入 chmod 600 my_folder/my_file.txt ``` 额外需要注意的逻辑点 1. 在验证密码时,正则表达式中的特殊字符集可以根据实际需求进行调整,不同的系统或场景可能对特殊字符的定义不同。 2. 在创建目录和文件时,要确保当前用户有足够的权限进行这些操作,否则会出现权限不足的错误。 3. 在修改文件权限时,要清楚不同权限数字(如600)所代表的具体含义,避免误操作导致文件无法正常使用。 ######[AI写代码神器 | 466点数解答 | 2025-06-06 11:02:00]
- Linux 系统用户、组及文件操作全流程实践(字节豆包 | 1142点数解答 | 2026-03-20 17:29:38)5
- 批处理文件:依据参数表.xlsx精准修改文件.txt中p、t、s值(GPT | 811点数解答 | 2024-12-05 12:58:37)378
- 用批处理和Python实现“参数表.xlsx”与“文件.txt”数据匹配及修改(讯飞星火 | 531点数解答 | 2024-12-05 13:20:42)366
- 批处理文件:依据参数表.xlsx精准修改文件.txt特定参数值(阿里通义 | 495点数解答 | 2024-12-05 13:22:26)348
- Python实现Q老师成绩管理任务:修改与查看学生成绩(字节豆包 | 191点数解答 | 2025-12-20 20:55:41)70
- Python 代码助力 Q 老师高效管理班级学生成绩:修改与查看一键搞定(字节豆包 | 326点数解答 | 2025-12-27 20:48:12)70
- 优化代码:安全高效解锁设备 Bootloader 与刷入 Recovery 镜像(DeepSeek | 345点数解答 | 2025-02-21 22:47:48)171
- Python 实现球类:精准计算半径、表面积与体积,附输入验证与异常处理!(阿里通义 | 261点数解答 | 2024-11-28 21:19:39)343
- 工程师必知:软件系统用户文档编写九大要点揭秘(百度文心 | 350点数解答 | 2023-11-09 18:23:53)182
- Python 利用 win32com 库:将 Excel 转换为 A4 横向 PDF 并单独打印首列(字节豆包 | 507点数解答 | 2025-03-10 15:48:12)302
- 工程师必知!Monkey 流程助力软件稳定性与可靠性提升(百度文心 | 388点数解答 | 2023-11-09 18:28:07)283
- 工程师揭秘:重要 APP 从需求到上线全流程攻略(百度文心 | 334点数解答 | 2023-11-09 18:31:47)282