0

我正在尝试在 tcsh shell 中执行此操作,但找不到执行此操作的命令;

while getopts 'w:c:hp' OPT; do
  case $OPT in
    w)  WARN=$OPTARG;;
    c)  CRIT=$OPTARG;; #this is in bash
    h)  hlp="yes";;
    p)  perform="yes";;
    *)  unknown="yes";;
  esac
done
4

1 回答 1

0
set argv=`getopt 'w:c:hp' $*`
set errcode=$?

if ( $errcode != 0 ) then
  echo 'Args please'
  exit 2
endif

set WARN CRIT hlp perform unknown

while (1)
  switch($1)
    case -w:
            set WARN=$2; shift; shift; breaksw
    case -c:
            set CRIT=$2; shift; shift; breaksw
    case -h:
            set hlp="yes"; shift ; breaksw;
    case -p:
            set perform="yes"; shift; breaksw;
    case --:
            shift; break;
    default:
            set unknown="yes"; break;
 endsw
end

echo WARN=$WARN
echo CRIT=$CRIT
echo hlp=$hlp
echo perform=$perform
echo unknown=$unknown
于 2018-03-07T14:07:00.900 回答