読者です 読者をやめる 読者になる 読者になる

path まわり

zsh

.zshenv に

####  path
temppath=( \
  $path /bin /sbin /usr/bin /usr/sbin /usr/local/bin /usr/local/sbin \
  $HOME/bin \
  /usr/X11R6/bin /usr/games \
  /usr/bsd /usr/bin/X11 /usr/bin/X11 /usr/i18n/bin  \
  /share/bin /usr/local/X11R6/bin /usr/local/Acrobat5/bin \
  /var/lib/gems/1.8/bin
)
path=()
for dir in ${(u)temppath:#.}; do
  if [ -d "$dir" ]; then
    path=( $path $dir )
  fi
done
unset dir temppath
path=( $path . )

重複を削除したり、"." をいったん取り除く。
この部分で。

${(u)temppath:#.}

これを使いこなせると、そうとう便利そう。