专栏首页我命由我不由天shell 实现主板测试

shell 实现主板测试

初接触shell,只能需要用到什么功能现学先用了。本文总结一下完成测试程序当中遇到的技巧和问题。

01. 变量生存期的问题,在函数中的变量无法在其他地方使用,在函数中只能使用在函数前定义的全局变量;

02. 利用函数,参数传递的方法,$1, $2, 分别表示第一个和第二个参数;

03.

printf "waiting....\r"

可以将光标移至当前行开头;

04.粘一个别人的小结

05. shell 指令一般会有一个返回值,如果指令执行成功返回0, 有错误返回1,可以利用

if [ $? -ne 0 ]

捕捉到;

06.

> /dev/null

将输出抛至垃圾站;

07. 有些板子的shell版本较低,支持的语法很少,例如重定向&>是将正常和错误均重定向,在不支持的板子上可以使用

> log.txt 2> log.txt

替代;

08. 又例如有些板子不支持数组(不知道是不是busybox的缘故),可以利用变量名+序列号替代:

test_items_0=Stuck
test_items_1=Value
test_items_2=XOR
test_items_3=SUB
test_items_4=MUL

var_op="test_items_"$arg1  #赋值给新变量
        # echo ${!var_op}       直接打印出变量内容
        eval var_item=\$$var_op      #间接引用,适用于一个变量名是另一个变量的内容
       
            echo $var_item     #间接引用,打印出原始变量的内容

09.

grep "Done." < log.txt > /dev/null

在log.txt 中查找字符串, 可用在if判断中;(未找到在字符串中匹配指定字符串的语法,例如在n行字符串中,匹配含有“abc” 子串的是哪行)

10. 字符串查询判断方法:

01.
if  echo ${string} | grep -q "ok"  ;then

02. 
re=$(echo $string | grep "out")
if [[ "$re" != "" ]]
then
  echo "包含"
else
  echo "不包含"
fi 

11. 只保留字符串中的数字:

num_f=`echo $numf_3 | tr -cd '[0-9]'`

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 【最简OAuth 2.0 教程】开发认证中心及资源服务器接入

    背景: 网上很多讲配置 oauth2 ,配置方法 复杂纷繁对于初学者很不友好,让人望而却步

    冷冷
  • 腾讯云云解析修改域名DNS服务器

    当你在腾讯云购买域名后,如果 DNS 服务器不正确,要把域名 DNS 修改为提示的 DNS 地址,解析后才生效。

    魏艾斯博客www.vpsss.net
  • v-distpicker 省市区插件的使用

    用户4344670
  • Nginx 设置cors跨域

    提示:有时候我们的后端是PHP文件,则需要把跨域的代码加 location ~ \.php(.*)$ 中。

    ITer.996
  • SEO优化-robots.txt解读

    搜索引擎(爬虫),访问一个网站,首先要查看当前网站根目录下的robots.txt,然后依据里面的规则,进行网站页面的爬取。 也就是说,robots.txt起到一...

    我是leon
  • Spring Boot 静态资源处理,妙!

    做web开发的时候,我们往往会有很多静态资源,如html、图片、css等。那如何向前端返回静态资源呢?

    Java技术栈
  • LazyMan的深入解析和实现

    1.方法链式调用  2.类的使用和面向对象编程的思路  3.设计模式的应用  4.代码的解耦  5.最少知识原则,也即 迪米特法则(Law of Demeter...

    我是leon
  • 快速了解正向代理与反向代理

    比如访问某些国外网站,可能需要购买vpn,并且vpn是在用户浏览器端设置的(并不是在远端的服务器设置)。浏览器先访问vpn地址,vpn地址转发请求,并最后将请求...

    全菜工程师小辉
  • Centos 7.4 安装 Jupyter NoteBook + TensorFlow 教程

    这几天看学习视频,看到一个很好玩的东西 Jupyter Notebook,但是视频上面都是安装的本地的。于是乎我想着,自己买的服务器闲着也是闲着就拿出来装一个,...

    拾贰
  • localStorage的黑科技-js和css缓存机制

    今天在微信公众号看到一篇技术博文,想用印象笔记收藏,所以发送了文章链接到pc上。然后习惯性地打开控制台,看看源码,想了解下最近微信用了什么新技术。  呵呵,以下...

    我是leon

扫码关注云+社区

领取腾讯云代金券