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.txt
  • 最后更改: 2022/11/24 09:55
  • oakfire