shell [ -n \"\$$var1\$$var2\" ] 求教什么意思?

[复制链接]
查看11 | 回复2 | 2011-5-8 09:56:14 | 显示全部楼层 |阅读模式
这是shell测试表达式,用于判断字符串是否非空。如果非空,返回true,否则false。前面加了反斜杠的 $ 符号被转义,失去其原本的功能(求变量值),因此不作展开。前面没有反斜杠的 $ 符号保持其求值的功能,因此 $var1 和 $var2 的值被代入字符串。假设 var1=1, var2=2那么这个测试表达式展开后变为:[ -n "$1$2" ]由于双引号也被转义,所以展开后被保留。这样,还可以继续展开,最终将位置参数$1和$2 (脚本或函数的传入参数)的值代入字符串,并判断表达式是否非空。
回复

使用道具 举报

千问 | 2011-5-8 09:56:14 | 显示全部楼层
判断这个临时产生的目录 \"\$$var1\$$var2\"是否存在
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行