Shell 脚本在开发中的体验
2014-10-13 20:59
148 查看
Shell 脚本在开发中的体验
这段时间在开发一个程序,程序输出有很多日志。有时候要通过日志来分析出错的问题。单独的查看效率太低分析不到什么。于是乎就想到了Shell。 日志文件在安卓的手机里面!开发环境 Fedora 、MacOS。手机Nexus4,Nexus5。开发工具 vim + arm-gcc。
情形1 需要将一些Bin程序添加到手机里面,但是一个一个的添加太麻烦于是:
这段代码 就能处理一批 以stream_开头的数据文件,将他们添加到手机里面
情形2 通过adb将手机的BIN程序启动。我这边因为socket端口的问题,需要将BIN程序,完全退出后,才能正常启动。 每次都是adb shell;ps;kill 之类的操作。不过用脚本操作后 就很方便了。
脚本会自动去处理,如果检测到程序还在运行就kill点,然后再启动
情形3 分析日志。 日志文件在手机的SD卡中。 程序在运行中,我需要检测运行的状况。
脚本会将手机SD卡的文件,取出到一个目录里,然后输出最后10行。
情形4 监控手机SD卡里的某一文件
这段时间在开发一个程序,程序输出有很多日志。有时候要通过日志来分析出错的问题。单独的查看效率太低分析不到什么。于是乎就想到了Shell。 日志文件在安卓的手机里面!开发环境 Fedora 、MacOS。手机Nexus4,Nexus5。开发工具 vim + arm-gcc。
情形1 需要将一些Bin程序添加到手机里面,但是一个一个的添加太麻烦于是:
#!/bin/sh for i in $(seq 50 50 500); do adb push "stream_"$i /data/local/tmp done;
这段代码 就能处理一批 以stream_开头的数据文件,将他们添加到手机里面
情形2 通过adb将手机的BIN程序启动。我这边因为socket端口的问题,需要将BIN程序,完全退出后,才能正常启动。 每次都是adb shell;ps;kill 之类的操作。不过用脚本操作后 就很方便了。
#!/bin/sh a=`adb shell "ps | grep stream"` echo $a pid=`echo $a | cut -d " " -f 2` echo $pid adb shell "kill ${pid}" adb push stream_3 /data/local/tmp adb shell /data/local/tmp/stream_3
脚本会自动去处理,如果检测到程序还在运行就kill点,然后再启动
情形3 分析日志。 日志文件在手机的SD卡中。 程序在运行中,我需要检测运行的状况。
#!/bin/sh while true; do adb pull /sdcard/log . tail -n 10 log done
脚本会将手机SD卡的文件,取出到一个目录里,然后输出最后10行。
情形4 监控手机SD卡里的某一文件
#!/bin/sh while true; do adb shell "df | grep emulated" adb shell "ls /sdcard/ -l | grep stream.mp4" adb shell "ls /sdcard/ -l | grep log" sleep 1; done;
相关文章推荐
- shell脚本开发总结
- 开发自动化系统管理脚本(shell)
- shell脚本开发的6点基本规范和优秀习惯
- 让你提前知道软件开发(22):shell脚本文件操作
- Linux下Service守护进程开发和Shell脚本控制Daemon
- shell脚本开发总结
- shell开发的启动和停止应用的脚本
- 让你提前认识软件开发(22):shell脚本中的文件操作
- Linux下Eclipse上搭建shell脚本开发环境
- 开发shell脚本检查Nginx实战分享
- Linux学习心得:细细品味shell脚本中的细节与用户体验 ^_^
- 开发自动化系统管理脚本(shell)
- 小型 Shell 脚本的典型开发周期
- 学习怎么开发shell安装脚本--freeswitch 安装
- 用Shell脚本快速搭建Ubuntu下的Nodejs开发环境
- 开发自动化系统管理脚本(shell) 推荐
- 嵌入式成长轨迹2【嵌入式环境及基础】【嵌入式Linux软件开发入门】【Shell脚本基础】
- shell脚本开发的6点基本规范和习惯---摘取自“老男孩linux运维培训”(自己通过视频整理)
- iOS开发-ipa打包终极教程-使用终端和shell脚本实现
- 为了 SHELL脚本开发汉诺塔游戏 部分草稿 shell建立二维数组并打印