请问如下的shell是什么含义?local __var="${JSON_PREFIX}${__cur}_${2//[^a-zA-Z0-9_]/_}"

如题所述

local_var 需要赋值的变量名称
= 就不用讲了吧?
${JSON_PREFIX}  这是一个变量
${_cur} 这也是一个变量
${2//[^a-zA-Z0-9]/_} 这是一个变量替换 $2 是shell里传参的第二个参数。
"//" 是变量替换的特殊符号[^a-zA-Z0-9] 是不匹配英文字母,也不匹配数字的时候替换成"_"

双斜线的用法:
 ${var//Pattern/Replacement}全局替换Global replacement.
 所有在变量var中被Pattern匹配到的都由Replacement代替.
 和上面的一样,如果Replacement被省略,则所有的匹配Pattern的字符串都会被删除.

温馨提示:答案为网友推荐,仅供参考
第1个回答  2014-10-09
哦。。。双斜线。。。这个除了sed中好像没见过
相似回答