bash 表达式

bash 表达式

在 bash 脚本中我有以下部分。

if [ "${1:0:1}" = '-' ]; then
   set -- mongod "$@"
fi

表达式${1:0:1}和代表什么set -- mongod "$@"

答案1

${parameter:offset:length}是“子字符串扩展”。(请参阅中的参数扩展man bash)。

set除其他外,可以设置位置参数:

剩余的 n 个 ARG 是位置参数,按顺序分配给 $1、$2、.. $n。

因此,表达式添加mongod到位置参数的前面。

相关内容