前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Shell脚本(最坑爹的括号)

Shell脚本(最坑爹的括号)

作者头像
用户2617681
发布2019-08-08 15:23:49
4890
发布2019-08-08 15:23:49
举报
文章被收录于专栏:秘籍酷秘籍酷

写过Sell脚本的同学都应该有这样的感触:偶尔多写了或者少写了一个空格,就会报出奇奇怪怪的错误,由于空格是不可见字符,因此排查此类错误最靠谱的方式是,不要犯这个错误。

Shell中有一个最基本的命令叫test,它可以测试数值、测试字符串和测试文件属性,是用得最多的命令,look:

当我们在执行分支语句、循环语句的时候,一般都离不开它,比如下面的脚本

#!/bin/bash if test -e file && test -r file then cat file fi

上述脚本的含义是:test一下文件file,如果存在并可读,就让它在屏幕上显示出来。但是上面那么写的确不好看。好看的代码应该是这样的:

#!/bin/bash if [ -e file ] && [ -r file ] then cat file fi

注意到:test 被改成成一对方括号 [ ] ,顿时好看多啦!可是你要看清楚,方括号的两边必须有空格,如果没有,那么等着被系统错误羞辱吧……

然而,有些地方又绝对不能有空格,坑你没商量,比如变量定义赋值:

name=Michael

上面的赋值号两边不能加空格,如果有空格,那么等着被系统错误羞辱吧……

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-05-22,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 秘籍酷 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档