[root@Server1 perllearn]#echo $var
[root@Server1 perllearn]#new=${var:-11}
[root@Server1 perllearn]#echo $new
11
[root@Server1 perllearn]#var=""
[root@Server1 perllearn]#new=${var:-11}
[root@Server1 perllearn]#echo $new
11
[root@Server1 perllearn]#var=1
[root@Server1 perllearn]#new=${var:-11}
[root@Server1 perllearn]#echo $new
1
而在perl中 也可以为变量提供默认值
方法:
$var//=2; 或则 $var||=2;
这两种方法是有区别的
对于后面一种是当$var 为undef时 还有的空字符串“”时 以及为0时值都会是2
而前面一种 相当于$var=definded($var)//2;
所有当$var 为空串和0是 definded($var)为真 所以结果为$var本身。分别为空串和0