33、Shell脚本编程:表达式组合、输入读取与交互设计

Shell脚本交互与表达式详解

Shell脚本编程:表达式组合、输入读取与交互设计

1. 表达式组合

在shell脚本编程中, test [[ ]] 功能大致相同,但使用场景有所区别。 test 是传统的测试命令,是POSIX标准shell规范的一部分,常用于运行系统启动脚本。而 [[ ]] 是bash(以及其他一些现代shell)特有的。虽然 test 使用广泛,掌握它很重要,但 [[ ]] 更实用且编码更简单,因此在现代脚本中更受青睐。

2. 可移植性的思考

一些Unix用户认为所有脚本都应具有“可移植性”,即脚本应能在任何类Unix系统上无需修改即可运行。这是因为在POSIX出现之前,命令和shell的专有扩展给Unix世界带来了混乱,所以他们对Linux对其喜爱的操作系统的影响持谨慎态度。

然而,可移植性也有严重的缺点,它会阻碍进步,要求使用“最低公分母”技术。在shell编程中,这意味着要使一切与原始的Bourne shell(sh)兼容。一些专有软件供应商利用这一缺点,将其专有扩展称为“创新”,实际上是为了锁定客户。

GNU工具(如bash)则没有这些限制,它们通过支持标准和广泛可用性来鼓励可移植性。可以免费在几乎任何系统(甚至Windows)上安装bash和其他GNU工具,所以可以放心使用bash的所有特性,它实际上是具有可移植性的。

3. 控制运算符:另一种分支方式

bash提供了两个可用于分支的控制运算符: &a

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符  | 博主筛选后可见
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值