MOH*_*MED 1 linux bash shell sh
我在shell脚本中多次看到他们"_"
在if比较中使用,如下所示:
if [ "_$str" = "_" ]; then ....; fi
Run Code Online (Sandbox Code Playgroud)
上面的代码检查str变量是否为空,并进行比较if [ "_$str" = "_" ]
.
为什么不用if [ "$str" = "" ]
?为什么要加"_"
两个字符串?
Alf*_*lfe 11
据我所知,这是出于历史原因.曾经有(并且可能在一些模糊的系统上)炮弹处理空字符串(也许是以破折号开头的字符串).因此,通过添加前缀来完全防止空字符串(以及类似选项的外观)的简单想法.今天所有常见的炮弹都不再存在这些问题了.
归档时间: |
|
查看次数: |
165 次 |
最近记录: |