Shell-Script

檢查zsh中文件名中是否存在帶下劃線的文件

  • August 16, 2012

我正在編寫一個非常簡單的腳本,它將連結共享配置文件。出於某種原因,對於名稱中帶有下劃線的文件,它的行為不像我預期的那樣。_(下劃線)在 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

沒關係。沒有下劃線之謎

slurm_api.yml${STATIC_CONFIG_FILES[4]}這樣的for應該像一個

for (( i=1;i<=$ELEMENTS;i++)); do

引用自:https://unix.stackexchange.com/questions/40538