查看: 134|回复: 0

[经验] 飞凌嵌入式ElfBoard ELF1板卡-提取字符并设置rtc时间

[复制链接]

该用户从未签到

发表于 7 天前 | 显示全部楼层 |阅读模式
分享到:
awk用法
awk是一款文本处理工具,通常在Unix和Linux操作系统中使用,用于以行为单位对文本进行处理和操作。它可以读取输入文本,对其进行处理,生成报表、统计信息等,并将结果输出到标准输出设备中。
它主要有以下特点:
一、可以处理结构化数据,如模拟数据库的关系型数据操作;
二、支持正则表达式匹配和字符串操作;
三、可以使用多个内置变量和函数,方便快捷地对数据进行处理;
四、支持流程控制和条件处理;
五、支持与其他Unix及Linux命令行工具配合使用;
awk的语法结构比较简单,它的基本语法格式如下:
  1. awk 'pattern {action}' filename
复制代码
设置rtc时间脚本
  1. #!/bin/sh

  2. echo -e "\e[1;36m-------------RTC TEST-------------\e[0m"

  3. date -s "2023-1-1 00:00:00"

  4. hwclock -w

  5. year=$(hwclock | awk '{print $5}')

  6. month=$(hwclock | awk '{print $2}')

  7. day=$(hwclock | awk '{print $3}')



  8. if [ $year -eq 2023 ] && [ "$month" = "Jan" ] && [ $day -eq 1 ]

  9. then

  10.         echo -e "\e[1;32m RTC OK \e[0m"

  11. else

  12.         echo -e "\e[1;31m RTC ERR \e[0m"

  13. fi
复制代码
RTC(实时时钟)功能的脚本程序,主要分为以下几个步骤:
一、使用echo命令输出一段提示信息,表示开始测试RTC功能。
二、使用date命令设置系统时间为2023年1月1日0时0分0秒。
三、使用hwclock命令将系统时间写入RTC芯片中。
四、使用hwclock命令分别获取当前年、月、日,并使用awk命令取出对应的数值。
五、使用if语句判断当前年、月、日是否等于预设值2023年1月1日。
六、如果当前年、月、日等于预设值,则使用echo命令输出一段带有颜色的提示信息,表示RTC功能测试通过,并将测试结果写入一个指定的文件中。
七、如果当前年、月、日不等于预设值,则使用echo命令输出一段带有颜色的提示信息,表示RTC功能测试失败,并将测试结果写入指定的文件中。
开发板测试
  1. root@ELF1:~# chmod 777 rtc.sh

  2. root@ELF1:~# ./rtc.sh
复制代码
5-1.png

回复

使用道具 举报

您需要登录后才可以回帖 注册/登录

本版积分规则

关闭

站长推荐上一条 /4 下一条



手机版|小黑屋|与非网

GMT+8, 2024-12-18 21:16 , Processed in 0.120408 second(s), 16 queries , MemCache On.

ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

苏公网安备 32059002001037号

Powered by Discuz! X3.4

Copyright © 2001-2024, Tencent Cloud.