我在查看 Gentoo 的 ebuilds 是如何制作的,我发现了以下代码:
_VIM_PLUGIN_ALLOWED_DIRS=(
after autoload colors compiler doc ftdetect ftplugin indent keymap
macros plugin spell syntax
)
local d
for d in "${_VIM_PLUGIN_ALLOWED_DIRS[@]}" "${@}"; do
[[ -d "${d}" ]] || continue
doins -r "${d}"
done
据我所知,_VIM_PLUGIN_ALLOWED_DIRS
是一个列表。d
是局部变量。
我不明白的是[@]
in _VIM_PLUGIN_ALLOWED_DIRS[@]
。通常我会省略[@]
, 并只d
迭代_VIM_PLUGIN_ALLOWED_DIRS
的值。
它在做什么?它的目的是什么?
我从未见过[@]
,我也不知道${@}
之后会做什么
PS:doins
是在别处定义的外部函数
提前致谢