命令在程序脚本中调用与串口执行结果不一致?
来源:互联网 发布:四万亿计划后果 知乎 编辑:程序博客网 时间:2024/06/03 15:47
这两天碰到一个bug,调试了好久,这里做一下记录,以免以后再掉入这个坑。
bug描述
在/usr/bin/目录下,有命令wpa_cli,(这是hostapd中的命令。用来配置无线网络的)。我测试路由器WPS功能时,如果Extender(我测试的板子)通过WPS连接上RootAP时,Extender会调用一个action_file:lib/wifi/wps-supplicant-update-uci。脚本wps-supplicant-update-uci中会调用wpa_cli … status.来获取Extender的sta接口的一些状态信息。 但是发现wpa_cli的输出为空。
bug调试
该Bug仅在运行WPS连接RootAp根据CONNECTED状态调用lib/wifi/wps-supplicant-update-uci时出现,手动在串口运行wpa_cli status可以获取到信息。手动执行脚本lib/wifi/wps-supplicant-update-uci(传入对应参数)也可以执行成功。
bug解决
程序调用脚本,与手动调用脚本结果不一致,很可能是因为环境变量的问题。通过env打印环境变量,将串口的环境变量在脚本中重新设置一遍,发现程序调用脚本也能成功了。 最终定位问题,脚本中缺少环境便令PATH导致了这个bug。
0 0
- 命令在程序脚本中调用与串口执行结果不一致?
- crontab定时执行脚本与手动执行脚本结果不一致
- 在android程序中调用shell命令与脚本
- 在android程序中调用shell命令与脚本
- 在Java中执行脚本命令以及调用外部程序说明
- JAVA学习22_在Java中执行脚本命令以及调用外部程序说明
- 在程序中调用外部程序,用process返回命令执行结果以及抓取错误信息的方法
- 脚本中判断Shell命令执行结果
- java调用perl脚本中cat和more命令的执行结果
- java执行shell命令或者脚本,返回结果到程序
- bat脚本中命令执行的结果赋值给变量
- linux 或WIN 程序中执行脚本获得输出结果
- 在脚本中执行命令的符号
- 如何在脚本中执行客户端程序。
- 在 Android 中调用二进制可执行程序(native executable )-- 在代码中执行shell命令
- C#程序中调用cmd执行命令
- 如何在windows bat脚本中调用Cygwin并执行命令?
- session.createSQLQuery(sql).list()与数据库中执行结果不一致 出现重复
- Maven引入依赖后自动下载并关联源码
- 人声频率范围及各频段音色效果
- Visual Sutdio2015 C++嵌入Lua脚本环境配置
- EnentBus进行页面间的传值
- 解决子view加点击后父布局不能滑动问题
- 命令在程序脚本中调用与串口执行结果不一致?
- hdu1025 最长上升子序列
- 苹果邓白氏编码申请
- Linux hrtimer分析--配置高精度模式
- 如何快熟集成支付宝
- C++ 学习第二天
- 相对定位和绝对定位
- ASP.NET教程
- android自动提示输入框