【发布时间】:2017-10-13 23:58:31
【问题描述】:
下面代码摘自mariadb docker image entrypoint中的@是什么意思
...
SOCKET="$(_get_config 'socket' "$@")"
"$@" --skip-networking --socket="${SOCKET}" &
pid="$!"
mysql=( mysql --protocol=socket -uroot -hlocalhost --socket="${SOCKET}" )
for i in {30..0}; do
if echo 'SELECT 1' | "${mysql[@]}" &> /dev/null; then
break
...
很高兴获得对良好手册/bash 参考的参考,因为在 google 中搜索 bash 中的 @ 含义无法产生良好的结果。
【问题讨论】:
-
$@ 将保存传递给给定脚本的参数。因此,例如使用 ./test test test1,$@ 将持有“test test1”
-
参考:Bash 手册:special parameters (
$@)、arrays (${mysql[@]}) 和 BashGuide
标签: bash