공유 구성 파일을 연결하는 매우 간단한 스크립트를 작성 중입니다. 어떤 이유로 이름에 밑줄이 있는 파일에 대해 예상한 것과 다르게 동작합니다. _(밑줄)은 zsh에서 특별한 의미를 갖나요?
언급된 스크립트는 이제 다음과 같습니다.
#!/bin/zsh
STATIC_CONFIG_PATH="/opt/apps/config"
STATIC_CONFIG_FILES=("couchdb.yml" "database.yml" "elasticsearch.yml" "slurm_api.yml")
cd $1/config
ELEMENTS=${#STATIC_CONFIG_FILES[@]}
for (( i=0;i<$ELEMENTS;i++)); do
if [ ! -L ${STATIC_CONFIG_FILES[${i}]} ]; then
echo 'Linking '$STATIC_CONFIG_PATH'/'${STATIC_CONFIG_FILES[${i}]}
ln -s $STATIC_CONFIG_PATH'/'${STATIC_CONFIG_FILES[${i}]}
fi
done
답변1
그것은 중요하지 않습니다. 밑줄이 없는 미스터리
slurm_api.yml
${STATIC_CONFIG_FILES[4]}
이렇게 되어야 for
합니다
for (( i=1;i<=$ELEMENTS;i++)); do