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

2. 设置 rtc 时间脚本
#!/bin/sh
echo -e "\e[1;36m-------------RTC TEST-------------\e[0m"
date -s "2023-1-1 00:00:00"
hwclock -w
year=$(hwclock | awk '{print $5}')
month=$(hwclock | awk '{print $2}')
day=$(hwclock | awk '{print $3}')ELF 1、ELF 1S 软件教程
www.elfboard.com
- 292 -
if [ $year -eq 2023 ] && [ "$month" = "Jan" ] && [ $day -eq 1 ]
then
echo -e "\e[1;32m RTC OK \e[0m"
else
echo -e "\e[1;31m RTC ERR \e[0m"
fi
RTC(实时时钟)功能的脚本程序,主要分为以下几个步骤:
一、使用 echo 命令输出一段提示信息,表示开始测试 RTC 功能。
二、使用 date 命令设置系统时间为 2023 1 1 0 0 0 秒。
三、使用 hwclock 命令将系统时间写入 RTC 芯片中。
四、使用 hwclock 命令分别获取当前年、月、日,并使用 awk 命令取出对应的数值。
五、使用 if 语句判断当前年、月、日是否等于预设值 2023 1 1 日。
六、如果当前年、月、日等于预设值,则使用 echo 命令输出一段带有颜色的提示信息,
表示 RTC 功能测试通过,并将测试结果写入一个指定的文件中。
七、如果当前年、月、日不等于预设值,则使用 echo 命令输出一段带有颜色的提示信
息,表示 RTC 功能测试失败,并将测试结果写入指定的文件中。

3. 开发板测试
root@ELF1:~# chmod 777 rtc.sh
root@ELF1:~# ./rtc.sh
图片1.png



    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    Powered by Discuz! X3.5  © 2001-2013 Comsenz Inc.