关于shell脚本编写代码格式的一个细节

因为初学shell脚本编写,对其格式不是很清楚,今天写了一段脚本,练笔,发现一些问题,如下:关于shell脚本编写代码格式的一个细节

其中定义了一个输入变量 YES_OR_NO,

按照脚本定义的规则,当其值等于yes,则输出,

you input:yes 

U r a sea man!welcome you!

当其值等于no,其值为

you input no

U r not a sea man,please exit this system

但是当脚本编写后,给脚本赋予可执行权限并编译

关于shell脚本编写代码格式的一个细节

执行后输入结果yes

关于shell脚本编写代码格式的一个细节

屏幕输出结果如下:

关于shell脚本编写代码格式的一个细节

没有得到想要的结果,在第4行报错。考虑到有可能是条件格式的问题,因此将条件前后各个变量与括号用空格隔开如下:

关于shell脚本编写代码格式的一个细节

编译执行后

yes


关于shell脚本编写代码格式的一个细节


输入no测试

关于shell脚本编写代码格式的一个细节

返回的还是yes的值。

所以最后,将条件格式更改为:

关于shell脚本编写代码格式的一个细节

输入no,输出结果为:

关于shell脚本编写代码格式的一个细节

输入yes,输出结果为

关于shell脚本编写代码格式的一个细节


搞定,成功!

通过这个例子说明,在编写shell脚本的过程中,各个变量以及常量和描述的间距及整体的格式有时候也非常讲究,如果不注意,可能会影响程序的运行,而造成不必要的纠错开销。


以下这个例子所有代码,若有雷同,敬谅!

关于shell脚本编写代码格式的一个细节

转载于:https://my.oschina.net/softwarechina/blog/140019