9.编写shell脚本test09.sh实现如下功能,依次提示用户输入自己姓名和身份证号(输入指令:read -p),根据输入的内容生成info.txt储存在当前目录下mytest09目录中。Info.txt的格式如下:姓名: 性别: 年龄: 地址:
时间: 2024-03-26 17:38:55 浏览: 120
好的,以下是test09.sh的代码实现:
```bash
#!/bin/bash
# 提示用户输入姓名和身份证号
read -p "请输入您的姓名:" name
read -p "请输入您的身份证号:" id_card
# 根据身份证号计算出年龄和性别
year=$(echo $id_card | cut -c 7-10)
month=$(echo $id_card | cut -c 11-12)
day=$(echo $id_card | cut -c 13-14)
sex=$(echo $id_card | cut -c 17)
now_year=$(date +%Y)
age=$(expr $now_year - $year)
if [[ $month -gt $(date +%m) || ($month -eq $(date +%m) && $day -gt $(date +%d)) ]]; then
age=$(expr $age - 1)
fi
if [[ $sex -eq 1 ]]; then
gender="男"
else
gender="女"
fi
# 生成info.txt文件并保存到mytest09目录中
mkdir -p mytest09
echo "姓名:$name 性别:$gender 年龄:$age 地址:" > mytest09/info.txt
echo "信息已保存到mytest09/info.txt文件中。"
```
脚本的实现步骤如下:
1. 使用read命令提示用户输入姓名和身份证号,并将输入的内容保存到变量name和id_card中。
2. 根据身份证号计算出用户的年龄和性别。
3. 使用mkdir命令创建mytest09目录(如果不存在)。
4. 使用echo命令将用户的信息保存到mytest09/info.txt文件中。
5. 输出保存成功的提示信息。
使用该脚本时,只需要在终端中输入以下命令即可:
```bash
$ ./test09.sh
```
然后根据提示输入姓名和身份证号即可。
阅读全文