간단한 도움말 옵션 Far bash 기능 다루기

간단한 도움말 옵션 Far 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일부 쉘과 호환되지 않을 수 있습니다:

결론

  • 하이픈은 비표준입니다. 쉘 간 호환성을 원한다면 멀리하십시오.
  • 하이픈 대신 밑줄을 사용하세요. 밑줄은 어디에서나 허용됩니다.

관련 정보