[shell]bad substitution

最近写一个shell脚本的时候遇到这样一个错误 

#!/bin/sh 
right=disk1 
part=${right//[a-zA-Z]} 

提示: 
bad substitution 

在命令行输入的时候,又是运行正确的。 

查了下有人说把sh改为bash,发现问题解决。 
#!/bin/bash
也就是不同的命令解释器的兼容问题,在ubuntu的shell下,实际上运行的是bash。而/bin/sh是到dash的软链接。 
这就是为什么利用.sh脚本会产生错误,而shell命令行下不会。
posted @ 2015-04-17 00:38  Shayla  阅读(662)  评论(0编辑  收藏  举报