以下是针对你提出的各项任务的详细代码实现及 任务 1 ```bash # 定义学生姓名 name="张三" # 提取姓名首字并转换为小写 first_char=$(echo ${name:0:1} | tr '[:upper:]' '[:lower:]') # 生成用户名 username="${first_char}${name:1}" # 创建新用户 useradd $username # 复制 /etc/passwd 到新用户家目录 cp /etc/passwd /home/$username/ # 学号和姓名信息 student_id="123456" student_name="张三" # 在文件第 15 行下添加指定内容 sed -i '15a hello'"$student_id+$student_name" /home/$username/passwd # 编辑文件,复制指定行并粘贴到文件末尾 ed /home/$username/passwd << EOF 15 m 5 a . w q EOF ``` 任务 2 ```bash # 切换到用户家目录 cd /home/$username # 创建 1.txt 文件并输入内容 echo "好好学习" > 1.txt # 使用 zip 工具压缩 1.txt 文件 zip 1.zip 1.txt # 创建解压目录 mkdir -p test # 解压压缩包到指定目录 unzip 1.zip -d test ``` 任务 3 ```bash # 重命名文件 mv 1.txt filename.txt # 修改文件权限 chmod 644 filename.txt ``` 任务 4 ```bash # 查找 /var/log 目录下所有扩展名为 .log 的文件 find /var/log -name "*.log" # 考试当天日期,假设为 2024-10-01 exam_date="2024-10-01" # 创建新文件 touch new_file.txt # 设置文件修改时间为考试当天 touch -d "$exam_date" new_file.txt # 向文件中写入一行文本 echo "这是新写入的内容" > new_file.txt # 查看文件内容 cat new_file.txt ``` 额外需要注意的逻辑点 1. 在创建新用户时,要确保系统中不存在同名用户,避免创建失败。 2. 在使用 `sed` 命令添加内容时,要注意行号的准确性,否则可能会导致内容添加到错误的位置。 3. 在设置文件修改时间时,日期格式要严格按照 `touch -d` 命令的要求,否则可能无法正确设置时间。 [2025-06-12 21:19:29 | AI写代码神器 | 592点数解答]