Bash機能を操作するための簡単なヘルプオプション

Bash機能を操作するための簡単なヘルプオプション

いくつかのコードを調整し、可能なオプションを処理する必要があります。関数を実行するか、ヘルプオプションを使用して簡単な説明を提供してください。

activate-jet ()
{
 local  iarg=0  narg="$#"
 while (( narg > 0 )); do
   opt="$1" ; iarg=$(( iarg + 1 ))
   case $opt in
     ("-h"|"--help")  echo "TODO" ; return ;;
     (*)  break ;;
   esac
 done
}

可能であれば、呼び出し時にユーザーに奇妙な動作を引き起こすことなく、より単純化したいと思います。

ベストアンサー1

あなたが言ったように、これは可能性がありますあなたはただ必要です一つディスカッションしたがって、屋根や「パッキング」は必要ありません。

$ activate_jet() { 
    [[ "$#" -gt 1 ]] && echo "Invalid number of arguments" && return
    if [[ ! -z "$1" ]]; then 
      if [[ "$1" = "-h" || "$1" = "--help" ]]; then
        echo "TODO" && return
      else
        echo "Bad argument" && return
      fi
    fi 
    echo "jet activated"
  }
$ activate_jet foo bar
Invalid number of arguments
$ activate_jet foo
Bad argument
$ activate_jet -h
TODO
$ activate_jet --help
TODO
$ activate_jet
jet activated

これで関数名を変更してハイフンを下線に変更しました。activate_jet代わりにactivate-jetハイフンのため一部のシェルと互換性がない可能性があります:

結論として

  • ハイフンは非標準です。シェル間の互換性が必要な場合は遠ざけてください。
  • ハイフンの代わりに下線を使用してください。下線はどこでも許可されます。

おすすめ記事