public:it:linux:shell

这是本文档旧的修订版!


Shell

${var} 变量var的值, 与$var相同
${var-DEFAULT} 如果 var 没有被声明, 那么就以 $DEFAULT 作为其值
${var:-DEFAULT} 如果 var 没有被声明, 或者其值为空, 那么就以 $DEFAULT 作为其值
${var=DEFAULT} 如果 var 没有被声明, 那么就以 $DEFAULT 作为其值
${var:=DEFAULT} 如果 var 没有被声明, 或者其值为空, 那么就以 $DEFAULT 作为其值
${var+OTHER} 如果 var 声明了, 那么其值就是 $OTHER, 否则就为 null 字符串
${var:+OTHER} 如果 var 被设置了, 那么其值就是$OTHER, 否则就为 null 字符串
${var?ERR_MSG} 如果 var 没被声明, 那么就打印 $ERR_MSG
${var:?ERR_MSG} 如果 var 没被设置, 那么就打印 $ERR_MSG
${!varprefix*} 匹配之前所有以 varprefix 开头进行声明的变量
${!varprefix@} 匹配之前所有以 varprefix 开头进行声明的变量
  • 字符串处理:
${#string} $string 的长度
${string:position} $string 中, 从位置 $position 开始提取子串
${string:position:length} $string 中, 从位置 $position开始提取长度为 $length 的子串 
${string#substring} 从变量 $string 的开头, 删除最短匹配 $substring 的子串
${string##substring} 从变量 $string 的开头, 删除最长匹配 $substring 的子串
${string%substring} 从变量 $string 的结尾, 删除最短匹配 $substring 的子串
${string%%substring} 从变量 $string 的结尾, 删除最长匹配 $substring 的子串 
${string/substring/replacement} 使用 $replacement, 来代替第一个匹配的 $substring
  • public/it/linux/shell.1617696184.txt.gz
  • 最后更改: 2021/04/06 16:03
  • oakfire