在家目录创建 its.sh

#!/usr/bin/env bash
 
set -euo pipefail
 
URL="https://its4.pku.edu.cn/cas/ITSClient"
IPRANGE="free"
 
echo "========== ITS CLI =========="
 
while true; do
  echo "Choose an action:"
  echo "  1) Connect"
  echo "  2) Disconnect"
  read -r -p "Enter 1 or 2: " choice
 
  case "$choice" in
    1)
      CMD="open"
      break
      ;;
    2)
      CMD="disconnect"
      break
      ;;
    *)
      echo "Invalid input. Please try again."
      ;;
  esac
done
 
while true; do
  read -r -p "Enter student/staff ID: " USERNAME
  if  -n "${USERNAME// }" ; then
    break
  fi
  echo "ID cannot be empty."
done
 
while true; do
  read -r -s -p "Enter password: " PASSWORD
  echo
  if  -n "$PASSWORD" ; then
    break
  fi
  echo "Password cannot be empty."
done
 
echo
echo "Sending request..."
 
RESPONSE=$(
  curl -sS --connect-timeout 10 --max-time 20 --config - <<EOF
url = "$URL"
request = "POST"
header = "Content-Type: application/x-www-form-urlencoded"
data-urlencode = "cmd=$CMD"
data-urlencode = "username=$USERNAME"
data-urlencode = "password=$PASSWORD"
data-urlencode = "iprange=$IPRANGE"
EOF
) || {
  echo "Request failed: network error or server unreachable."
  exit 1
}
 
echo "Server response:"
echo "$RESPONSE"

之后加入到环境变量中(下面是 bash 版本的示例,如果是 zsh 类似)

mv its.sh its
chmod +x its
mkdir -p ~/bin
mv its ~/bin/
echo 'export PATH="$HOME/bin:$PATH"' >> ~/.bashrc
source ~/.bashrc
which its