9.编写shell脚本test09.sh实现如下功能,依次提示用户输入自己姓名和身份证号(输入指令:read -p),根据输入的内容生成info.txt储存在当前目录下mytest09目录中。Info.txt的格式如下图(红色部分为需要自动生成的内容)。

时间: 2024-03-29 09:41:34 浏览: 9
可以使用如下的shell脚本实现: ```bash #!/bin/bash # 提示用户输入姓名和身份证号 read -p "请输入您的姓名:" name read -p "请输入您的身份证号码:" idcard # 生成info.txt文件 echo "姓名:$name" > ./mytest09/info.txt echo "身份证号码:$idcard" >> ./mytest09/info.txt echo "生成时间:$(date '+%Y年%m月%d日 %H:%M:%S')" >> ./mytest09/info.txt ``` 该脚本首先提示用户输入姓名和身份证号,然后使用`echo`命令将姓名、身份证号码和生成时间依次写入info.txt文件中。注意:该脚本假设当前目录下已经存在mytest09目录,如果不存在该目录,则需要先创建该目录。
相关问题

9.编写shell脚本test09.sh实现如下功能,依次提示用户输入自己姓名和身份证号(输入指令:read -p),根据输入的内容生成info.txt储存在当前目录下mytest09目录中。Info.txt的格式如下:姓名: 性别: 年龄: 地址:

好的,以下是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 ``` 然后根据提示输入姓名和身份证号即可。

9. 编写shell脚本test09.sh实现如下功能,依次提示用户输入自己姓名和身份证号(输入指令:read -p),根据输入的内容生成info.txt储存在当前目录下mytest09目录中。Info.txt的格式如下图(红色部分为需要自动生成的内容)。姓名:张三 性别:男 年龄:21 住址山东省济南市

好的,我已经明白了你的问题。以下是 `test09.sh` 脚本的实现代码: ```shell #!/bin/bash # 提示用户输入姓名和身份证号 read -p "请输入您的姓名:" name read -p "请输入您的身份证号:" id_card # 从身份证号中提取年龄和住址信息 age=$(echo $(($(date +%Y)-${id_card:6:4}))) address=${id_card:0:6} # 将信息写入 info.txt 文件 mkdir -p mytest09 echo "姓名:$name" > mytest09/info.txt echo "性别:$(if [ ${id_card:16:1} -eq 1 ]; then echo "男"; else echo "女"; fi)" >> mytest09/info.txt echo "年龄:$age" >> mytest09/info.txt echo "住址:$(curl -s "http://sp0.baidu.com/8aQDcjqpAAV3otqbppnN2DJv/api.php?query=$address&resource_id=6006" | awk -F '"' '{print $4}')" >> mytest09/info.txt echo "信息已保存至 mytest09/info.txt" ``` 脚本实现的功能: 1. 提示用户输入姓名和身份证号。 2. 从身份证号中提取出年龄和住址信息。 3. 使用 `mkdir -p` 命令创建 `mytest09` 目录(如果目录不存在)。 4. 将生成的个人信息以指定的格式写入 `info.txt` 文件,并保存到 `mytest09` 目录中。 5. 输出提示信息。 需要注意的是,住址信息是通过调用百度接口获取的,这里使用了 `curl` 和 `awk` 命令来提取接口返回的 JSON 数据中的地址信息。如果你的系统没有安装 `curl` 命令,需要先安装。 使用方法: 1. 将上述代码保存到 `test09.sh` 文件中。 2. 在终端中切换到 `test09.sh` 文件所在的目录。 3. 运行命令 `chmod +x test09.sh`,将脚本文件变为可执行文件。 4. 运行命令 `./test09.sh`,按照提示输入姓名和身份证号即可。

相关推荐

最新推荐

recommend-type

智慧物流医药物流落地解决方案qytp.pptx

智慧物流医药物流落地解决方案qytp.pptx
recommend-type

JAVA物业管理系统设计与实现.zip

JAVA物业管理系统设计与实现
recommend-type

基于java的聊天系统的设计于实现.zip

基于java的聊天系统的设计于实现
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

实现实时数据湖架构:Kafka与Hive集成

![实现实时数据湖架构:Kafka与Hive集成](https://img-blog.csdnimg.cn/img_convert/10eb2e6972b3b6086286fc64c0b3ee41.jpeg) # 1. 实时数据湖架构概述** 实时数据湖是一种现代数据管理架构,它允许企业以低延迟的方式收集、存储和处理大量数据。与传统数据仓库不同,实时数据湖不依赖于预先定义的模式,而是采用灵活的架构,可以处理各种数据类型和格式。这种架构为企业提供了以下优势: - **实时洞察:**实时数据湖允许企业访问最新的数据,从而做出更明智的决策。 - **数据民主化:**实时数据湖使各种利益相关者都可
recommend-type

解释minorization-maximization (MM) algorithm,并给出matlab代码编写的例子

Minorization-maximization (MM) algorithm是一种常用的优化算法,用于求解非凸问题或含有约束的优化问题。该算法的基本思想是通过构造一个凸下界函数来逼近原问题,然后通过求解凸下界函数的最优解来逼近原问题的最优解。具体步骤如下: 1. 初始化参数 $\theta_0$,设 $k=0$; 2. 构造一个凸下界函数 $Q(\theta|\theta_k)$,使其满足 $Q(\theta_k|\theta_k)=f(\theta_k)$; 3. 求解 $Q(\theta|\theta_k)$ 的最优值 $\theta_{k+1}=\arg\min_\theta Q(
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。
recommend-type

"互动学习:行动中的多样性与论文攻读经历"

多样性她- 事实上SCI NCES你的时间表ECOLEDO C Tora SC和NCESPOUR l’Ingén学习互动,互动学习以行动为中心的强化学习学会互动,互动学习,以行动为中心的强化学习计算机科学博士论文于2021年9月28日在Villeneuve d'Asq公开支持马修·瑟林评审团主席法布里斯·勒菲弗尔阿维尼翁大学教授论文指导奥利维尔·皮耶昆谷歌研究教授:智囊团论文联合主任菲利普·普雷教授,大学。里尔/CRISTAL/因里亚报告员奥利维耶·西格德索邦大学报告员卢多维奇·德诺耶教授,Facebook /索邦大学审查员越南圣迈IMT Atlantic高级讲师邀请弗洛里安·斯特鲁布博士,Deepmind对于那些及时看到自己错误的人...3谢谢你首先,我要感谢我的两位博士生导师Olivier和Philippe。奥利维尔,"站在巨人的肩膀上"这句话对你来说完全有意义了。从科学上讲,你知道在这篇论文的(许多)错误中,你是我可以依
recommend-type

实现实时监控告警系统:Kafka与Grafana整合

![实现实时监控告警系统:Kafka与Grafana整合](https://imgconvert.csdnimg.cn/aHR0cHM6Ly9tbWJpei5xcGljLmNuL21tYml6X2pwZy9BVldpY3ladXVDbEZpY1pLWmw2bUVaWXFUcEdLT1VDdkxRSmQxZXB5R1lxaWNlUjA2c0hFek5Qc3FyRktudFF1VDMxQVl3QTRXV2lhSWFRMEFRc0I1cW1ZOGcvNjQw?x-oss-process=image/format,png) # 1.1 Kafka集群架构 Kafka集群由多个称为代理的服务器组成,这