0

次のように定義された load_pg という関数があります。

load_pg () {
    pg_restore --verbose --clean --no-acl --no-owner -h localhost -U $1 -d $2 $3
}

そして、次のコードを使用して、各パラメーターをオートコンプリートしようとしています。

#compdef load_pg
_arguments -s \
  "1::_ldpguser" \
  "2::_ldpgdb" \
  "3::_ldpgfile"

_ldpguser () {
  compadd $USER
}

_ldpgdb () {
  compadd $(cat config/database.yml | grep -i database | awk '{print $2}')
}

_ldpgfile () {
  compadd $(ls *.dump*)
}

残念ながら、TAB を押しても何も起こりません。私は何を間違っていますか?次の回答のコードを使用してみました

4

0 に答える 0